代码:
\documentclass{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}[scale=1.2]
\begin{axis}[
title=Find next vertex,
xlabel=Cube's $dimension$,
ylabel=$Time$ (sec),]
\addplot coordinates {
(2, 4.86e-07)
(4, 1.548e-06)
(8, 2.1081e-05)
(16, 0.00440496)
(32, 277.778)
};
\addplot [red,mark=*] coordinates {
(2, 8.17e-07)
(4, 2.218e-06)
(8, 3.0043e-05)
(16, 0.00721884)
(32, 296.945)
};
\end{axis}
\end{tikzpicture}
\end{document}
结果:
正如您所说,前四次测量结果似乎相等(但实际情况并非如此),这是因为最后一次测量结果明显较大。您知道如何解决这个问题吗?
通过使用对数刻度,较小的值可以区分,但较大的值会相冲突。也许我应该放大,但不知道如何在我的情况下应用它!
答案1
考虑到 y 值跨度为 8 个数量级,我认为对数刻度是最佳选择。另外,不要对斜体文本使用数学模式,因为其语义错误,并且输出效果不佳。如果需要斜体,请使用\textit{dimension}
。
\documentclass[border=5mm]{standalone}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}[scale=1.2]
\begin{axis}[
title=Find next vertex,
xlabel=Cube's dimension,
ylabel=Time (sec),
ymode=log]
\addplot coordinates {
(2, 4.86e-07)
(4, 1.548e-06)
(8, 2.1081e-05)
(16, 0.00440496)
(32, 277.778)
};
\addplot [red,mark=*] coordinates {
(2, 8.17e-07)
(4, 2.218e-06)
(8, 3.0043e-05)
(16, 0.00721884)
(32, 296.945)
};
\end{axis}
\end{tikzpicture}
\end{document}