我正在使用pandas绘图功能进行直方图子图。
df.plot.hist(subplots = True)
我想在每个图中添加一条垂直线。我知道你可以使用
在matplotlib图中做到这一点 plt.axvlines
但是如何访问pandas生成的各个子图? 我看了看:Is there a way to pass different vertical lines to each subplot when using pandas histogram with "by=somevar"? 但有人可以给我一个如何做到这一点的实际例子吗? 谢谢!
答案 0 :(得分:0)
Axes
返回df = pd.DataFrame(np.random.random((100,5)))
axs = df.plot.hist(subplots = True)
for ax in axs:
ax.axvline(0.5)
个对象的列表。您只需迭代每个轴并添加垂直线
{{1}}
答案 1 :(得分:0)
我正面临与您提到的相同的问题:
ax = daily_returns.hist(bins=20) # changing no. of bins to 20
print(ax)
通过打印结果,我得到了:
[[<matplotlib.axes._subplots.AxesSubplot object at 0x0000021F1BEBEF28>
<matplotlib.axes._subplots.AxesSubplot object at 0x0000021F1C0F8208>]]
因此,在我的情况下,我将需要执行ax [0] [0]和ax [0] [1]之类的操作来到达轴