在同一图表上针对不同状态绘制不同的线

时间:2019-04-24 21:08:23

标签: python matplotlib seaborn

我正在尝试创建一些州的___数量分布。

我想在同一张图上用不同的线条表示所有状态。

以下是我的数据的示例:您拥有状态(“我要根据其过滤行”),评论数量(x轴)以及有很多评论的餐厅的频率(y轴) )

State | num_of_reviews | Count_id
alaska        1              400
alaska        2              388
alaska        3              344
...
Wyoming      57              13

每当我尝试在seaborn或matplotlib中进行简单的线图绘制时,它只会返回一个混乱的图形。

有人知道我可以轻松过滤df ['State']的一串代码吗?

1 个答案:

答案 0 :(得分:1)

假设您有50多个州,我不会在同一图中绘制每个州的分布,因为它会变得非常混乱且难以阅读。相反,我建议使用FacetGrid(有关here的更多信息)。

类似的事情应该做。

import seaborn as sns
import matplotlib.pyplot as plt
g = sns.FacetGrid(df, col="State", col_wrap=5, height=1.5)
g = g.map(plt.hist, "num_of_reviews")

您可以找到有关如何可视化数据here的其他可能的解决方案和想法。

如果这些都不适合您,那么如果您对问题进行更好的解释并提供所需的输出以及最小,完整且可验证的示例,则可能会有所帮助。