Python:在Pandas中使用group_by函数分散绘图

时间:2016-04-28 19:46:11

标签: python pandas matplotlib plot dataframe

我有一个数据框,其中有一个名为genres的列。每种类型都有多个值作为电影名称。格式如下:

git checkout .

我需要基于movie_val对每个类型进行分组,并在散点图中绘制每个组,如群集(例如:一个群集或颜色中的动作类型电影,另一个群集中的冒险等)。我检查了matplot lib库,它期望聚类图的两个值X和Y.我的group_by命令会有很多电影值(例如,冒险类型有很多值,我不知道如何将值绘制为一组)。

这些group_by值中的每一个都应该以不同的颜色表示。 我尝试了下面的条形图代码。但我正在寻找散点图,因为下面的格式不允许散点图。

   Movie_val  Genre
      2       Fantasy
      11      Adventure
      12      Comedy
      2       Fantasy
      2       Adventure
     11       Adventure
     13       Thriller
     12       Fantasy
     10       Thriller
     11       Drama
     1        Fantasy

我在使用pandas库的python中尝试这个。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

seaborn图书馆可能会给你你想要的东西。当然,您仍然需要选择数据框的哪些列将提供散点图的坐标。

import seaborn as sns
g = sns.FacetGrid(df, hue="Genre", size=5)
g.map(plt.scatter, "column name for x dimension", "column name for y dimension", s=50, alpha=.7)
g.add_legend();

另请参阅这里有更复杂分面的示例: https://stanford.edu/~mwaskom/software/seaborn/tutorial/axis_grids.html