有时,
DataFrame.plot()
循环内的for
会生成多个图表。
import pandas as pd
data = {'Str': ['A', 'A', 'B', 'B'], 'Num': [i for i in range(4)]}
df = pd.DataFrame(data)
for n in ['A', 'B']:
df[df.Str == n].plot(kind='bar')
但有时,它会生成单个图表。
import pandas as pd
data = {'C1': ['A', 'A', 'B', 'B'],
'C2': [i for i in range(4)],
'C3': [1,2,1,2]}
df = pd.DataFrame(data)
for n in [1,2]:
df[df.C3 == n].groupby('C1').C2.sum().plot(kind='bar')
从前面的代码来看,如果
plt.show()
被添加到循环末尾。它将生成多个图表。
import pandas as pd
import matplotlib.pyplot as plt
data = {'C1': ['A', 'A', 'B', 'B'],
'C2': [i for i in range(4)],
'C3': [1,2,1,2]}
df = pd.DataFrame(data)
for n in [1,2]:
df[df.C3 == n].groupby('C1').C2.sum().plot(kind='bar')
plt.show()
我不想使用
plt.show()
。实际上我只想 import
pandas
并使用 for
循环创建多个图表。