在 pgfplots 中使用设置图层时设置线宽

在 pgfplots 中使用设置图层时设置线宽

我一直在使用 pgfplots 绘制一些图表。我更喜欢在图表中使用相对较粗的线条,我觉得这更适合我在图表中使用的字体,可以通过line width=1pt选项中的类似方法实现\begin{axis}。但是,我现在正在向图表添加第二个 y 轴。pgfplots 手册说我应该使用set layers。但是,当我添加 时set layers,我失去了更改线宽的效果。关于如何让参数line width坚持轴线、刻度、绘图线等,有什么想法吗?

在四处寻找的时候,我偶然发现了TikZ 中存在错误?图层上的线宽这似乎相关,但由于我并不是真正的 TikZ 或 pgfplots 专家,所以我不确定如何应用该问答中的结论。

这是一个使用单轴和图的简单示例,它展示了我想要克服的问题:

\documentclass{minimal}

\usepackage{tikz}
\usepackage{pgfplots}
\pgfplotsset{compat=1.15}


\begin{document}

\begin{tikzpicture}

\pgfplotsset{set layers} % commenting this line makes line width work

\begin{axis}[
    xmin=0,
    xmax=4,
    line width=1pt,
    every tick/.style={black}
]

\addplot {x^2};

\end{axis}
\end{tikzpicture}

\end{document}

主动set layers(不良行为):

使用 <code>设置图层</code>

评论之后set layers(我想看到,但在使用时set layers):

注释掉 <code>set layer</code> 之后

答案1

看看这是否有帮助:

\documentclass[margin=3mm]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.15}


\begin{document}
\pgfplotsset{set layers=axis on top,
             axis line style={line width=1pt},
             every axis plot post/.append style={line width=1pt}
             }
    \begin{tikzpicture}
\begin{axis}[
    xmin=0, xmax=4,
            ]
\addplot {x^2};
\end{axis}
    \end{tikzpicture}
\end{document}

在此处输入图片描述

相关内容