gpt4 book ai didi

python - matplotlib 图例符号和文本未对齐

转载 作者:行者123 更新时间:2023-12-05 07:52:20 24 4
gpt4 key购买 nike

我在图表的图例中放置下标时遇到了这个问题。如果我不在图例文本中使用下标,一切看起来都很好并且句柄和文本对齐,但是使用下标,文本的字体会发生变化,而且它会卡在图例框的顶部。这就是我设置图例的方式

        ax.legend(loc='upper center', bbox_to_anchor=(0.5, 1.12),
ncol=4,prop={'size':16})

传说是

        legend_labels=['BR:$K_r$=5%',"BR:$K_r$=10%","Tape:$K_r$=5%","Tape:$K_r$=20%","HDD:$K_r$=5%","HDD:$K_r$=20%","SSD:$K_r$=5%","SSD:$K_r$=20%"]

我还在 stackoverflow 上看到了多个关于文本和图例对齐的问题,但建议的解决方案对我不起作用。我尝试从图例中获取文本并将对齐方式设置为“居中”,但无济于事。

这是最小的工作示例。

    from matplotlib.pyplot import *

subplot(211)
plot([1,2,3], label="$test_1$")
plot([3,2,1], label="test2")
legend(bbox_to_anchor=(0., 1.02, 1., .102), loc=3,
ncol=2, mode="expand", borderaxespad=0.,prop={'size':18})
show()

我正在使用 python 2.7.6。

最佳答案

字体的不同来自于数学模式:周围带有美元符号的文本告诉 matplotlib 使用 LaTeX 预处理文本,而 LaTeX 数学字体(Computer Modern)不同于 Liberation Sans(或 matplotlib 用于纯文本的任何字体) .避免这种误解的最简单方法是使用数学模式仅用于索引:

plot([1,2,3], label="test$_1$")

然后数学字体将仅用于索引:

enter image description here

关于python - matplotlib 图例符号和文本未对齐,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33864342/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com