使用日期数组

问题描述

我有一个 Date 数组和一个每天的值数组,当我使用 Date 作为 x 轴标签时,matplotlib 添加了两个额外的日期,每边一个。在下图中,我的 X 轴值数组从 2021 年 2 月 4 日开始,但是,matplotlib 添加了 2021 年 2 月 3 日。最后发生了同样的事情,我的数组在 3 月 14 日结束,但是情节在 15. 三月结束。这些天没有关联的值,所以我想删除它们。如果我对 x 数组使用 string 而不是 Date,这是正确的,但我想避免自己来回解析 Date 以对其进行格式化。

这是我用来绘制图表的代码

x = np.array(x_arr)
y = np.array(y_arr)

fig,ax = plt.subplots(figsize=(len(x) * 0.85,5),constrained_layout=True)
fig.set_dpi(300.0)

ax.set_title("Daily Cases " + today.strftime("%A,%d. %m. %Y"),fontsize=12,color='black',fontweight='bold')
plt.xlabel("Date")
plt.ylabel("Cases")
plt.plot(x,y,color="r",marker='o')
plt.autoscale(enable=True)

ax.get_xaxis().set_major_locator(mdates.DayLocator())
ax.get_xaxis().set_major_formatter(mdates.DateFormatter("%d. %b. %Y"))
plt.setp(ax.get_xticklabels(),rotation=30,ha="right")

ax.spines['top'].set_visible(False)
ax.spines['right'].set_visible(False)

最后,图形使用 plt.savefig(os.path.join(target_dir,filename)) 保存为文件,我省略了这部分代码,因为我在两者之间进行了 I/O 操作。

这是一个示例图表。

Additional date at the beginning

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...