Заменить осевую линию, которая была установлена ​​как стиль ранее

Заменить осевую линию, которая была установлена ​​как стиль ранее

Я не могу понять, как переопределить стиль линии оси с «со стрелкой» (заданный в стиле) на «без стрелки».

Вот 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}

введите описание изображения здесь

Связанный контент