我是熊猫新手,正在尝试学习并遇到了这个问题。 我有一个数据框,我正在尝试为每个索引值绘制数据框的行。我想要数据框中每个索引的不同图(子图)。
ANDAMAN & NICOBAR ISLANDS 264296 32413 80984 1286 338 31 564 669
ARUNACHAL PRADESH 401876 27045 418732 3287 162815 771 362553 6648
CHANDIGARH 852574 51447 8720 138329 1160 1960 246 1014
这里的字符串值是索引,我想要数据帧的这些索引的不同图。 怎么办?
我认为你需要的是
T
用于转置和 plot
以及参数 subplots=True
:
print(df)
输出:
1 2 3 4 5 6 7 8
0
ANDAMAN & NICOBAR ISLANDS 264296 32413 80984 1286 338 31 564 669
ARUNACHAL PRADESH 401876 27045 418732 3287 162815 771 362553 6648
CHANDIGARH 852574 51447 8720 138329 1160 1960 246 1014
第 0 列位于包含位置的索引中。
使用 df.T 将数据帧转置为“列”格式与“行”格式。
df.T
输出:
0 ANDAMAN & NICOBAR ISLANDS ARUNACHAL PRADESH CHANDIGARH
1 264296 401876 852574
2 32413 27045 51447
3 80984 418732 8720
4 1286 3287 138329
5 338 162815 1160
6 31 771 1960
7 564 362553 246
8 669 6648 1014
现在让我们生成绘图:
df.T.plot(subplots=True)
输出:
这里有一个例子:
import pandas as pd
from matplotlib import pyplot as plt
data = pd.DataFrame({"ANDAMAN & NICOBAR ISLANDS": [264296, 32413, 80984, 1286, 338, 31, 564, 669],
"ARUNACHAL PRADESH": [401876, 27045, 418732, 3287, 162815, 771, 362553, 6648],
"CHANDIGARH": [852574, 51447, 8720, 138329, 1160, 1960, 246, 1014]})
data.plot()
plt.show()
带有列标签:
data.index = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h']
data.plot(xticks=range(len(data.index)))