У меня есть график со значениями оси Y, которые округлены до двух знаков после запятой с помощью tikz. Изменение значений происходит в 3-м и 4-м знаках после запятой. Из-за округления постоянные значения показаны на оси Y:
MWE показан ниже. Я пробовал настроить ytick
свойство так, чтобы оно включало желаемые значения, но это не решило проблему.
\documentclass{book}
\usepackage{amsmath}
\usepackage{tikz} % needed to import .tikz graphics
\usepackage{pgfplots} % needed to import .tikz graphics
\begin{document}
Text and image:
\begin{tikzpicture}
\begin{axis}[%
width=0.8\textwidth,
height=0.3\textheight,
scale only axis,
xmin=4000,
xmax=5000,
xtick={4000, 4200, 4400, 4600, 4800, 5000},
xlabel={iteration},
xmajorgrids,
ymin=0.4615,
ymax=0.4645,
ytick={0.4615, 0.4625, 0.4635, 0.4645},
ylabel={$\text{C}_\text{L}\text{ [-]}$},
ymajorgrids,
axis x line*=bottom,
axis y line*=left
]
\addplot [color=blue,solid,line width=1.5pt,forget plot]
table[row sep=crcr]{
3997 0.463684 \\
};
\end{axis}
\end{tikzpicture}%
\end{document}
Как заставить tikz отображать точные значения оси Y, заданные в ytick
свойстве?
решение1
Используя number format/precision
вы можете изменить значение по умолчанию 2
. Вот пример изменения точности для y
меток оси - со значения по умолчанию 2
на 3
:
\documentclass{book}
\usepackage{amsmath}
\usepackage{tikz} % needed to import .tikz graphics
\usepackage{pgfplots} % needed to import .tikz graphics
\begin{document}
Text and image:
\begin{tikzpicture}
\begin{axis}[%
width=0.8\textwidth,
height=0.3\textheight,
scale only axis,
xmin=4000,
xmax=5000,
xtick={4000, 4200, 4400, 4600, 4800, 5000},
xlabel={iteration},
xmajorgrids,
ymin=0.4615,
ymax=0.4645,
ytick={0.4615, 0.4625, 0.4635, 0.4645},
ylabel={$\text{C}_\text{L}\text{ [-]}$},
yticklabel style={/pgf/number format/precision=3},
ymajorgrids,
axis x line*=bottom,
axis y line*=left
]
\addplot [color=blue,solid,line width=1.5pt,forget plot]
table[row sep=crcr]{
3997 0.463684 \\
};
\end{axis}
\end{tikzpicture}%
\end{document}