Я не могу понять, как переопределить стиль линии оси с «со стрелкой» (заданный в стиле) на «без стрелки».
Вот MWE:
\documentclass[]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage{pgfplots,tikz}
\pgfplotsset{compat=newest}
\pgfplotsset{
axisStyle/.style={axis y line =left,
axis x line =bottom,
axis line style ={very thick}}
}
\begin{document}
\begin{figure}[htbc]
\centering
\begin{tikzpicture}
\begin{axis}
[ axisStyle,
axis y line=none,
axis y line*=left,
axis x line*=bottom,
ymax=5
]
\addplot[domain=-2:2] {x^2};
\end{axis}
\end{tikzpicture}
\end{figure}
\end{document}
Как вы видите, не работает ни простая установка стиля линии на «без стрелки», ни предварительная установка его на «отсутствует».
Примечание: В действительности мой стиль, конечно, содержит гораздо больше параметров, поэтому было бы разумно использовать стиль и просто изменить эти две настройки, если это возможно.
решение1
Чтобы изменить стиль линий оси, используйте <axis> axis line style={<styles>}
, где <axis>
— ось, которую нужно изменить ( x
, y
, z
, или пропустите, чтобы задать стиль для всех осей), а <styles>
— стиль, который нужно применить.
Итак, мы можем использовать axis line style={-}
в axis
параметрах для переопределения axisStyle
и локальной установки отсутствия наконечника стрелки для линии оси. Здесь я опустил , <axis>
поскольку рисуется только одна линия оси, но эффект тот же, что и с x axis line style
.
Эти ключи будутдобавленок текущему установленному стилю осевой линии, поэтому axis line style ={very thick}
from axisStyle
все еще действует.
\documentclass[tikz]{standalone}
\usepackage{pgfplots,tikz}
\pgfplotsset{compat=1.12}
\pgfplotsset{
axisStyle/.style={
axis y line =left,
axis x line =bottom,
axis line style ={very thick},
}
}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
axisStyle,
axis line style={-},
axis y line=none,
ymax=5,
]
\addplot[domain=-2:2] {x^2};
\end{axis}
\end{tikzpicture}
\end{document}