Matplotlib如何给xaxis标签加下划线?

2024-06-02 08:30:51 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图用plot.rc给xticklabel加下划线,但是

plt.rc('text', usetex=True)
xtext = plt.xticks()
xtext[0] = tuple(r'\underline{}'.format(x) for x in xtext[0])

但是上面的代码给了我一个错误`'tuple'对象不支持项分配'

与以下错误相同:

xtext[1] = plt.text(0,0,r'\underline254')

这里,xtext[0]x-axis label valuesndarrayxtext[1]Text xticklabel objectssilent_list

如何在xtick标签下划线?你知道吗


Tags: texttrueformatforplot错误pltrc
1条回答
网友
1楼 · 发布于 2024-06-02 08:30:51

考虑以下解决方案。在这里,我创建了一个带有下划线的修改记号标签的新列表。然后我使用axis对象axset_xticklabels将它们指定为新的记号标签。我已经用旧式的字符串格式替换了format,使用%因为某种原因,format方法只在第一个字符下面加下划线。你知道吗

import matplotlib.pyplot as plt
from matplotlib import rc
rc('text', usetex=True)

fig, ax = plt.subplots()
plt.plot(range(5))
xtext = plt.xticks()

xtext_new = [r'\underline{%s}' %x for x in xtext[0]]
ax.set_xticklabels(xtext_new)
plt.show()

enter image description here

相关问题 更多 >