gpt4 book ai didi

python - 在 matplotlib 中的垂直线旁边添加文本

转载 作者:太空狗 更新时间:2023-10-30 00:43:20 25 4
gpt4 key购买 nike

这是我的代码:

import matplotlib.pyplot as plt
import matplotlib.dates as mdates
import datetime
import numpy as np
fig, ax = plt.subplots(1,1)
sample_dates = np.array([datetime.datetime(2000,1,1), datetime.datetime(2001,1,1)])
sample_dates = mdates.date2num(sample_dates)
plt.vlines(x=sample_dates, ymin=0, ymax=10, color = 'r')
ax.xaxis.set_major_locator(mdates.YearLocator())
ax.xaxis.set_major_formatter(mdates.DateFormatter('%d.%m.%y'))
plt.show()

它在 x 轴上的某些日期绘制两条红线。现在我想在每一行中添加文本。文字应与线平行。我从哪里开始?

最佳答案

您可以使用 Matplotlib text 函数在绘图上绘制文本。它有很多参数可以设置。请参阅文档和示例 here .

这是一个例子,其中一些文本与线平行:

import matplotlib.pyplot as plt
import matplotlib.dates as mdates
import datetime
import numpy as np
from matplotlib.pyplot import text

fig, ax = plt.subplots(1,1)
sample_dates = np.array([datetime.datetime(2000,1,1), datetime.datetime(2001,1,1)])
sample_dates = mdates.date2num(sample_dates)
plt.vlines(x=sample_dates, ymin=0, ymax=10, color = 'r')
ax.xaxis.set_major_locator(mdates.YearLocator())
ax.xaxis.set_major_formatter(mdates.DateFormatter('%d.%m.%y'))

for i, x in enumerate(sample_dates):
text(x, 5, "entry %d" % i, rotation=90, verticalalignment='center')

plt.show()

应该是这样的:

New plot result.

关于python - 在 matplotlib 中的垂直线旁边添加文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41153317/

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