增加 Plots.jl 中图例标签之间的间距/填充

cri*_*nja 5 julia plots.jl

我正在使用带有 GR 后端的 Plots.jl 在 JuliaLang 中生成一些图。我注意到,当使用 LaTeXStrings.jl 在标签靠近在一起的图例标签中生成 Latex 字符串时。为了说明我所指的内容,我编辑了JuliaPlots 线型示例以在图例标签中使用 Latex 字符串。代码如下:

using Plots; gr()
using LaTeXStrings

styles = filter((s->begin
            s in Plots.supported_styles()
        end), [:solid, :dash, :dot, :dashdot, :dashdotdot])

styles = reshape(styles, 1, length(styles))
n = length(styles)
y = cumsum(randn(20, n), dims = 1)

plot(y, line = (5, styles), label = [L"s^{ol}_{id}" L"d^{as}_h" L"d^{o}_{t}" L"d^{ash}_{dot}" L"dash^{dot}_{dot}"], legendtitle = "linestyle")
Run Code Online (Sandbox Code Playgroud)

上面的代码产生以下图:

图例中带有 LaTeXStrings 的 Plots.jl

如您所见,一个标签的下标与正下方标签的上标非常接近。与图例标题类似。

我想增加每个标签之间的间距/填充,以便每个标签的超级脚本和子脚本之间存在间隙,但不知道该怎么做。

Prz*_*fel 4

更高级的图例格式似乎仅适用于pyplot()后端。然而,在工作时gr()我有时会使用这个非常丑陋的技巧:

plot(y, line = (5, styles), label = [L"^{s^{ol}_{id}}" L"^{d^{as}_h}" L"^{d^{o}_{t}}" L"^{d^{ash}_{dot}}" L"^{dash^{dot}_{dot}}"],legendtitle = "linestyle",legendfontsize=14.0)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述