在不同轴上以不同比例绘制两个数据框列

cub*_*nyc 2 python matplotlib pandas

我正在尝试绘制数据框的两列,其中一列具有 Log Yscale,另一列具有常规列。我不确定语法是什么,文档也没有太大帮助。谁能建议正确的语法是什么,以及如何学习 matplotlib 在 python 中的工作原理?

Rol*_*Max 8

Pandas 提供了在辅助 y 轴上绘图的选项。除此之外,您只需要使用 更改辅助轴的比例.set_scale('log')

下面是一个例子:

import matplotlib.pylab as plt
import pandas as pd

df = pd.DataFrame({'x': [1,2,0,4], 'y': [1e1, 5e3, 3e2, 3e4]})

ax = df.plot(secondary_y='y')
ax2 = ax.twinx()
ax2.set_yscale('log')

plt.show()
Run Code Online (Sandbox Code Playgroud)

用对数标度的次要 y 绘图