为多列生成多个图

时间:2019-08-19 14:26:44

标签: python plot

最近我看了Pydata 2019视频,并遇到了Pandas教程 https://www.youtube.com/watch?v=8upGdZMlkYM&list=PLGVZCDnMOq0oywykwgVAcGvsGzagyMbwS

在23:40中,多列有3个图,但是当我将其绘制时,它将所有图都绘制在一个图中。

我缺少一个论点吗?

1 个答案:

答案 0 :(得分:0)

matplotlib中,您可以使用subplots(rows, columns),它会给您许多axes,然后您就可以在分开的axes上绘画。

在电影中,您还可以看到单词axes,因此他还在axes的某个地方创建了单独的剧情。您将必须观看所有电影才能找到他用来创建轴的代码。或者从电影中找到完整的代码并对其进行测试。它还使用seaborn和一些设置,这些设置可能会自动在分离的轴上创建图。


一个简单的示例,它在分开的轴上绘制熊猫列。

import pandas as pd
import matplotlib.pyplot as plt

df = pd.DataFrame({
    'A': [1,2,3],
    'B': [2,3,1],
    'C': [2,1,3],
})

figure, axes = plt.subplots(3,1)

df['A'].plot(ax=axes[0])
df['B'].plot(ax=axes[1])
df['C'].plot(ax=axes[2])

plt.show()

enter image description here


编辑:在电影开头,您可以看到所有代码的教程链接 Tutorial: Time Series Analysis with Pandas,在那里您可以看到完整的

   .plot(..., subplots=True)

import pandas as pd
import matplotlib.pyplot as plt

df = pd.DataFrame({
    'A': [1,2,3],
    'B': [2,3,1],
    'C': [2,1,3],
})

axex = df[['A','B', 'C']].plot(subplots=True)

plt.show()