如何使用matplotlib从轴记号中获取标签的文本



事实是,我试图通过将记号的标签与正则表达式进行比较来过滤我在xaxis上显示的记号。我目前正在"筛选",只对其中的60个进行筛选。但是,当我在玩非周期函数,同时又愿意强调某个现象时,我需要能够得到勾号的标签。为了做到这一点,我需要能够将标签的"值"放入变量中。但我不知道如何获取文本。我尝试过get_text((方法,但得到的只是一个空字符串。这是我的代码中我认为与此相关的部分,如果你认为你需要一些精确性,请问我:

for index, label in enumerate(ax.xaxis.get_ticklabels()):
if index % (2*30) != 0:
label.set_visible(False)
else:
print(label.get_text())
for index, tick in enumerate(ax.xaxis.get_ticklines()):
if index % (4*30) != 0:
tick.set_visible(False)

这里是一个使用比特币价值超过2年的例子,x轴每60天刻度一次。例如,由于我无法获得标签的价值,我无法专注于每个月的第一天。感谢所有阅读我的人,如果你有答案,请告诉我!!

事实上,试图从标签中获取文本与此无关。因为此文本是x值的值。所以,我基本上是想通过另一种方式得到x值。。。这是我想出的代码:

for index, label in enumerate(ax.xaxis.get_ticklabels()):
if re.findall(".*-.[13579]-0[2-9]", dateList[index]) or re.findall(".*-.[13579]-[123].", dateList[index]) or re.findall(".*-.[02468]-.*", dateList[index]):
label.set_visible(False)
for index, tick in enumerate(ax.xaxis.get_ticklines()):
if index % (4*30) != 0:
tick.set_visible(False)

结果,以2年内的比特币价值为例,其中x轴每2个月递增一次

最新更新