matplotlib Pandas擦除轴上的散点图

yjghlzjz  于 2023-08-06  发布在  其他
关注(0)|答案(2)|浏览(99)

我想使用pandas来绘制线条,以便于处理x轴上的日期。但是,我还想用散点图覆盖折线图,以显示每个单独的点。我在以前的pandas版本中成功地做到了这一点(我相信是1.4.2)。)但是我现在在一台1. 5. 3版本的新电脑上,这个已经不能用了。看看MVP。请注意,红色散点图没有显示出来,但删除s.plot调用后会显示散点图。不知怎的,Pandas正在清除分散点。

s = pd.Series(np.random.randn(100))
s.index = pd.period_range(start = "2000", freq = "M", periods = 100).to_timestamp()

f, ax = plt.subplots()
s.plot(ax = ax)
ax.scatter(s.index, s, color = "red")
plt.show()

字符串
Pandas version = 1.5.3 Matplotlib version = 3.7.0
使用%matplotlib内联绘图

dddzy1tm

dddzy1tm1#

你可以在这里使用reset_index.plot.scatter

s.plot(ax=ax)
s.reset_index(name='value').plot.scatter(x='index', y='value', ax=ax, color="red")
ax.set_xlabel('')
ax.set_ylabel('')

字符串


的数据
另请注意,您可以在原始绘图调用中绘制标记:

s.plot(ax = ax, marker='o', markerfacecolor='red', markeredgecolor='red')

yh2wf1be

yh2wf1be2#

我刚在电脑上查了你的密码。这不是Pandas的问题。它适用于pandas=1.5.3pandas=1.4.2
但是,您需要将matplotlib升级到3.7.1

matplotlib 3.7.0

字符串


的数据

matplotlib 3.7.1


相关问题