有没有办法只使用 python-pandas 创建多轴图? [复制]

Posted

技术标签:

【中文标题】有没有办法只使用 python-pandas 创建多轴图? [复制]【英文标题】:Is there any way to create multiple axes plot only by using python-pandas? [duplicate] 【发布时间】:2022-01-24 06:16:27 【问题描述】:

我是 pandas 库的新手,正在处理一个样本(大小:100K 行,3 列)数据集。我想知道是否可以使用df.plot() 方法在带有熊猫的线图下方绘制?。

基本上我需要在一个共同的 X 轴上绘制两个 Y 轴(两个不同的比例),当然还有适当的标签和图例。

【问题讨论】:

【参考方案1】:

你可以使用twinx:

fig, ax1 = plt.subplots()
ax2 = ax1.twinx()

现在你在同一个图中有 2 个轴。

Demo from matplotlib

适应熊猫:

t = np.arange(0.01, 10.0, 0.01)
data1 = np.exp(t)
data2 = np.sin(2 * np.pi * t)
df = pd.DataFrame('X': t, 'Y1': data1, 'Y2': data2)

ax1 = df.plot(x='X', y='Y1', color='b', legend=False)
ax2 = df.plot(x='X', y='Y2', color='r', legend=False, ax=ax1.twinx())
plt.show()

【讨论】:

我尝试了这种方法并遵循了实现类似方法的文章,但这需要花费大量时间来计算即使是正常的 XY 绘图也需要大约 2 分钟才能绘制,但 pandas df.plot() 方法可以在几秒钟内工作.那么你能建议实现 df.plot() 而不是直接使用 matplotlib.plot 的解决方案吗? 你想念我在df.plot的例子吗? 对不起,我错过了。谢谢它的工作!你能给我推荐一篇文章来美化这个图表吗,比如添加图例、备注、标记数据点等? 你可以看看Matplotlib gallery。我经常使用Seaborn,因为该库可以理解 Pandas 数据框。

以上是关于有没有办法只使用 python-pandas 创建多轴图? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

python-pandas

遍历 CSV 的每一行并使用 Python-Pandas 写入文件夹中的单个 JSON 文件

python-pandas:StringMethods

python-pandas

仅在特定条件下将 NaN 替换为“-”符号,Python-Pandas

python-pandas