是否有一种简单的方法来在matplotlib中对齐不同种类的时间序列的两个子图(图和条图)?我使用熊猫包装纸,因为我正在处理pd.Series
对象:
import pandas as pd
import matplotlib.pyplot as plt
series = pd._testing.makeTimeSeries()
fig, axes = plt.subplots(2, 1)
series.head(3).plot(marker='o', ax=axes[0])
series.head(3).plot.bar(ax=axes[1])
plt.tight_layout()
结果在视觉上不太好,保持代码简单和:
根据评论中提出的想法,我认为这是最简单的解决方案(放弃了熊猫API),这正是我所需要的:
import pandas as pd
import matplotlib.pyplot as plt
series = pd._testing.makeTimeSeries()
fig, axes = plt.subplots(2, 1, sharex=True)
axes[0].plot(series.head(3), marker='o')
axes[1].bar(series.head(3).index, series.head(3))
plt.tight_layout()
最终修复xticks的值缺失的情况,xticks不会每天绘制(例如plt.xticks(series.head(3).index)
。
感谢您的帮助!