尝试使用以下代码访问matplotlib轴标签的长度:
for label in ax.xaxis.get_ticklabels()[1::2]:
print(len(label))
但是我收到的错误是该对象没有length属性。 print(label[2])
也出现类似错误。
答案 0 :(得分:5)
Matplotlib的文本对象无法通过标准索引进行访问 - 您要查找的是text object documentation中找到的get_text()
属性。例如。
for label in ax.xaxis.get_tick_labels()[1::2]:
print(len(label.get_text()))
答案 1 :(得分:5)
您从label
迭代的get_ticklabels()
是matplotlib.text.Text
个对象。要访问该对象中的实际文本,您可以使用get_text()
。
所以,这样的事情应该有效:
for label in ax.xaxis.get_ticklabels()[1::2]:
print(len(label.get_text()))
请注意,此长度可能包含特殊字符(例如latex $
mathmode delimiters),因为它是原始文本字符串的长度