如何用重复的索引分类数据创建多折线图?

时间:2019-01-09 06:25:54

标签: python pandas matplotlib data-visualization visualization

我有以下格式的DataFrame(df)。我想使用此数据创建多折线图。

Name    Category    Score   Count
A   Books   12025.4375  48
A   Music   17893.25    4
A   Movie   31796.37838 37
A   Script  1560.4  5
A   Art 973.125 8
B   Music   1929    15
B   Movie   3044.229167 48
B   Script  3402.4  10
B   Art 2450.125    8
C   Books   14469.3 10
C   Music   10488.78947 57
C   Movie   1827.101695 59
C   Script  7077    2

预期输出:

我想要X轴上的唯一类别。 在Y轴和代表多个名称的多行上得分。

计数只是该图不需要的其他数据。

我尝试使用以下语法,但未以预期格式显示输出。

lines = df.line(x= 'Category',\
    y=['Name','Score'],figsize=(20,10))

我在这里尝试了多个选项和答案,但似乎没有任何帮助。

1 个答案:

答案 0 :(得分:1)

首先输入pivot数据,然后按DataFrame.plot进行绘制,line是默认值,因此应省略:

import matplotlib.pyplot as plt

df1 = df.pivot('Category','Name','Score')
df1.plot(figsize=(20,10))
#show values in x axis
plt.xticks(np.arange(len(df1.index)), df1.index)
plt.show()