matplotlib pyplot - 如何组合多个 y 轴和多个图

托马斯·R

我需要绘制一组不同的图,每个图至少有两个不同的 y 轴。

我设法单独解决了每个任务:

第一:不同情节的集合:

import matplotlib.pyplot as plt
import pandas as pd
import numpy as np

a1 = np.random.randint(0,10,(6,2))
a2 = np.random.randint(0,10,(6,2)) * 10
df = pd.DataFrame(np.hstack([a1,a2]), columns = list('abcd'))

plt.subplot(1,2,1)
plt.plot(df.index,df.a,'-b')
plt.plot(df.index,df.c,'-g')

plt.subplot(1,2,2)
plt.plot(df.index,df.b,'-b')
plt.plot(df.index,df.d,'-g')

在此处输入图片说明

第二:绘制至少有两个不同的 y 轴:

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

ax.plot(df.index,df.a,'-b')
ax2.plot(df.index,df.c,'-g')

在此处输入图片说明

但是我将这两件事结合起来的所有尝试都失败了。有没有人有办法解决吗?

r-初学者

为每个子图设置两个轴。

ax0 = plt.subplot(1,2,1)
ax1 = ax0.twinx()
ax2 = plt.subplot(1,2,2)
ax3 = ax2.twinx()

完整代码

fig = plt.figure()
fig.subplots_adjust(wspace=0.3)
ax0 = plt.subplot(1,2,1)
ax1 = ax0.twinx()
ax0.plot(df.index,df.a,'-b')
ax1.plot(df.index,df.c,'-g')

ax2 = plt.subplot(1,2,2)
ax3 = ax2.twinx()
ax2.plot(df.index,df.b,'-b')
ax3.plot(df.index,df.d,'-g')

plt.show()

在此处输入图片说明

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何删除matplotlib.pyplot中子图之间的空间?

Python matplotlib.pyplot饼图:如何删除左侧的标签?

如何使用pyplot使轴占据多个子图(Python)

如何在matplotlib.pyplot中隐藏轴

Matplotlib / pyplot:自动调整y轴的单位

如何在matplotlib pyplot中保持x轴的不同值

Pyplot / Matplotlib:如何实现压缩的y轴

带有Matplotlib和Twinx的多个Y轴

使用matplotlib.pyplot绘制多个字典值

Matplotlib多个Y轴,xlabel消失了吗?

在Plotly的同一X轴和Y轴上有多个条形图

如何在matplotlib pyplot中的y轴上向间隔组添加标签?

在多个matplotlib.pyplot子图上创建图例单击事件

如何使用matplotlib.pyplot在x轴上创建分组的条形图(按月和年),在y轴上创建值的条形图?

Matplotlib热图Y轴

在matplotlib.pyplot中,如何在x和y坐标中创建标签?

更改y轴的数量计数(Python,matplotlib.pyplot)

Matplotlib.pyplot:如何为现有绘图设置第二个y轴

matplotlib(python)-在没有pyplot的情况下为多个图创建单个自定义图例

如何在其中一个图上使用共享 X 轴和多个 Y 轴的堆叠图?

使用 matplotlib 显示多个 y 轴脊时减少一个子图的宽度

matplotlib:使用多个 twinx 子图控制 y 轴标签的位置

如何在matplotlib中组合多个密度图?

如何在 matplotlib.pyplot.text() 函数中为 x 和 y 轴设置两个不同的坐标系统?

使用循环创建具有双 y 轴的多个 matplotlib 图

Matplotlib Pyplot ImageGrid 图问题

如何在 matplotlib.pyplot 中更改我的绘图图的 Y 比例

ggarrange:组合多个共享 y 和 x 轴的图:仅安排一个共享的 y 轴,同时保持相同比例的图

如何“旋转”交换 matplotlib.pyplot.imshow 轴