繁体   English   中英

Matplotlib-如何在X轴刻度标签下划线?

[英]Matplotlib - how to underline the x-axis ticklabels?

我试图使用plot.rc下划线,但是

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

但是上面的代码给我一个错误的“'元组'对象不支持项目分配”

同样的错误:

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

这里, xtext[0]是一个ndarrayx-axis label valuesxtext[1]是一种silent_listText xticklabel objects

如何在xtick标签上加下划线?

考虑以下解决方案。 在这里,我正在创建带下划线的修改后的刻度标签的新列表。 然后,使用轴对象axset_xticklabels将它们分配为新的刻度标签。 由于某种原因,我已将format替换为使用%的旧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()

在此处输入图片说明

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM