在 TikZ 中使用 siunitx 与 fourier 的问题

在 TikZ 中使用 siunitx 与 fourier 的问题

对于我的报告,我同时使用这两个fouriersiunitx

我最近注意到,使用库自动用括号括起来的单位units显示pgfplots方式很奇怪;奇怪的是,单位有时(例如伏特的情况)会接触到包围它的方括号。

请参阅 MWE,其中我比较了 5 种不同的书写单位的方式;即 $[\si{\volt}]$ $\left[\si{\volt}\right]$ [\si{\volt}] [V]ylabel命令中以及直接在y unit= \si{\volt},命令中:

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{fourier}


\usepackage{siunitx}
\usepackage{pgfplots}
\usepgfplotslibrary{groupplots}
\usetikzlibrary{pgfplots.groupplots}
\usepgfplotslibrary{units}
\usetikzlibrary{calc}
\usepgfplotslibrary{external}
\usetikzlibrary{external}
\tikzexternalize[prefix=gfxExt/]    % Updated figures are in this directory



\begin{document}

\tikzset{external/force remake}
\begin{tikzpicture}
%/*
\pgfplotsset{
    scaled y ticks = false,
    width=0.5\textwidth,
    height=5cm,
    axis on top,
    xticklabel style={text width=2em,align=center},
    xticklabels={\empty},
    xmin=-5,xmax=5,
    ymin=-5,ymax=5,
    xminorticks=true,
    yminorticks=true,
    ylabel shift={-1.5em},
    ylabel style={align=center}
}
%
    \begin{groupplot}[
        group style={
        group size=2 by 4,
        vertical sep=25pt,
        horizontal sep=35pt
        },
    ]
    % ------------------------
    % Plot [1, 1]
    %-----------
    \nextgroupplot[
            xticklabels={\empty},
            ylabel={ylabel 1},
            ylabel={Amplitude $[\si{\volt}]$ $\left[\si{\volt}\right]$  [\si{\volt}] [V]},
            y unit= \si{\volt},
            title={subtitle 1},
    ]
    %-----------
    % Plot [1, 2]
    %-----------
    \nextgroupplot[
            xticklabels={\empty},
            title={subtitle 2},
            ylabel={}
    ]
    \end{groupplot}    
\end{tikzpicture}%

\end{document}

结果片段如下(希望分辨率足够高,能够看出差异)在此处输入图片描述

在我看来,除了纯文本之外的所有输出[V]都有点丑陋。有办法解决我的问题吗?(或者我只是无法识别最美观的排版?)

答案1

看起来,如果你想把间距问题视为一个问题,它只是由于fourier处理括号前后间距的方式所致。在我看来,它看起来很糟糕,但这只是我的看法。

无论如何,对于那些可能感兴趣的人来说,有一种快速的方法可以在括号的打开之后和关闭之前设置一个额外的空格;这样,您不必在每次使用命令时都包含空格\si{}

这可以用命令来定义

\pgfplotsset{unit marking pre={[\,},unit marking post={\,]}}

加载后立即\usepgfplotslibrary{units}

干杯

相关内容