我想在 x 轴上添加一些小刻度,但不是每个值都添加(太多了!)。所以我想我可以每 2 个单位添加一次。然而,minor tick length
这里似乎被忽略了。
这是我的代码:
\documentclass{article}
\usepackage{tikz}
\usepackage{pgfplots}
\begin{document}
\begin{figure}[h]
\centering
\begin{tikzpicture}
\begin{axis} [
xbar,
xlabel={Number of dots},
ylabel={Blue value},
scale only axis,
axis lines=left,
xmin=0,
xmajorgrids=true,
% minor x tick num={2},
minor tick length=2,
enlarge y limits={abs=1},
]
\addplot[draw=none, fill=green!30]
coordinates {(0,0)(30,1)};
\end{axis}
\end{tikzpicture}
\end{figure}
\end{document}
图表如下:
答案1
键minor tick length
控制次要刻度的长度(多大),而不是它们之间的间隔。 在您的例子中,它不会被忽略;它会被遵守并转换为2pt
(您可以使用更大的值(例如50
)来检查这一点)。
如果要在 x 坐标的偶数值处放置小刻度,则可以使用minor xtick
如下方法
minor xtick={2,4,...,28}
完整示例:
\documentclass{article}
\usepackage{tikz}
\usepackage{pgfplots}
\begin{document}
\begin{figure}[h]
\centering
\begin{tikzpicture}
\begin{axis} [
xbar,
xlabel={Number of dots},
ylabel={Blue value},
scale only axis,
axis lines=left,
xmin=0,
xmajorgrids=true,
minor xtick={2,4,...,28},
enlarge y limits={abs=1},
]
\addplot[draw=none, fill=green!30]
coordinates {(0,0)(30,1)};
\end{axis}
\end{tikzpicture}
\end{figure}
\end{document}
评论
pgfplots
内部加载,tikz
因此无需明确加载后者。- 使用
[h]
进行浮动放置是灾难的根源;请使用限制较少的规范,例如,[htp]
或者根本不使用。