Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/343.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python-绘图2一起绘图_Python_Matplotlib - Fatal编程技术网

Python-绘图2一起绘图

Python-绘图2一起绘图,python,matplotlib,Python,Matplotlib,我有两个单独的图形,我想在同一个绘图上显示它们 这是我的1号情节代码 ax1= concatenated_data_cleaned.groupby(['Cat1', 'Cat2']).median()[['Measure']].unstack() ax1.plot.bar(rot =0) plt.xlabel("Cat Names") plt.ylabel("Measures") plt.title("Title 1") plt.show() 这是我的2号情节代码 ax2= concatena

我有两个单独的图形,我想在同一个绘图上显示它们

这是我的1号情节代码

ax1= concatenated_data_cleaned.groupby(['Cat1', 'Cat2']).median()[['Measure']].unstack()
ax1.plot.bar(rot =0)
plt.xlabel("Cat Names")
plt.ylabel("Measures")
plt.title("Title 1")
plt.show()
这是我的2号情节代码

ax2= concatenated_data_cleaned.groupby(['Cat2', 'Cat1']).median()[['Measure']].unstack()
ax1.plot.bar(rot =0)
plt.xlabel("Cat Names")
plt.ylabel("Measures")
plt.title("Title 2")
plt.show()
现在,这会在不同的图形(图像)中一个接一个地显示出来。我如何在同一个图表中显示这一点-在同一个图表(图像)中一个接一个

请帮我做这个

这就是我正在尝试的

fig, axes = plt.subplots(nrows=2)
df1= concatenated_data_cleaned.groupby(['Cat1', 'Cat2']).median()[['Measure']].unstack()
ax1 = df1.plot.bar(rot =0)
df2= concatenated_data_cleaned.groupby(['Cat2', 'Cat1']).median()[['Measure']].unstack()
ax2 = df2.plot.bar(rot =0)
ax1.plt.bar(rot=0, ax=axes[0])
ax2.plt.bar(rot=0, ax=axes[1])
plt.show()

而且它对我不起作用。

您的变量命名有点不合常规<代码>ax通常用于matplotlib轴对象。这里有一个数据帧

无论如何,您应该设置具有两个轴的地物<代码>plt.子批次是一种简单的方法。它将返回图形和一个包含您创建的所有轴的数组。您甚至可以使用
sharex
sharey
将轴设置为两者相等。对每个数据帧使用打印调用中的轴对象:

df1= concatenated_data_cleaned.groupby(['Cat1', 'Cat2']).median()[['Measure']].unstack()
df2= concatenated_data_cleaned.groupby(['Cat2', 'Cat1']).median()[['Measure']].unstack()

fig, axes = plt.subplots(nrows=2, sharex=True, sharey=True)
df1.plot.bar(rot=0, ax=axes[0])
df2.plot.bar(rot=0, ax=axes[1])
axes[0].set_title('Title 0')
axes[1].set_title('Title 1')
plt.show()

您的变量命名有点不合常规<代码>ax通常用于matplotlib轴对象。这里有一个数据帧

无论如何,您应该设置具有两个轴的地物<代码>plt.子批次是一种简单的方法。它将返回图形和一个包含您创建的所有轴的数组。您甚至可以使用
sharex
sharey
将轴设置为两者相等。对每个数据帧使用打印调用中的轴对象:

df1= concatenated_data_cleaned.groupby(['Cat1', 'Cat2']).median()[['Measure']].unstack()
df2= concatenated_data_cleaned.groupby(['Cat2', 'Cat1']).median()[['Measure']].unstack()

fig, axes = plt.subplots(nrows=2, sharex=True, sharey=True)
df1.plot.bar(rot=0, ax=axes[0])
df2.plot.bar(rot=0, ax=axes[1])
axes[0].set_title('Title 0')
axes[1].set_title('Title 1')
plt.show()

它到底是如何工作的?它说“AxesSubplot”对象没有属性“plt”哦,我明白了。我打错了。让我来编辑我的帖子。它到底是如何工作的?它说“AxesSubplot”对象没有属性“plt”哦,我明白了。我打错了。让我来编辑我的帖子。