繁体   English   中英

Python:如何绘制带有多条线的图形?

[英]Python: How to draw a graphic with multiples lines?

我有一个包含三列的数据框。 我需要绘制多行图形。 在该图中,每行代表一个id ,x轴代表月份列,y轴代表qtd列。

+-----+-----+----+
|month| id  |qtd |
+-----+-----+----+
| 1   |  1  | 1  |
| 1   |  2  | 3  |
| 1   |  3  | 6  |
| 2   |  4  | 2  |
| 2   |  5  | 3  |
| 3   |  6  | 4  |
| 3   |  7  | 5  |
| 3   |  8  | 4  |
+-----+-----+----+

DataFrame代码:

l=[(1,1,1),(1,2,3),(1,3,6),(2,4,2),(2,5,3),(3,6,4),(3,7,5),(3,8,4)]
names=["month","id","qtd"]
db=sqlContext.createDataFrame(l,names)
db.show()

期望结果:

plot with x=qtd, y=month and one line for each id line

在该示例中,我有3条不同的id线,因此该图形将用3条线绘制,但是在实际数据框中, id的数量将是未知的。

如果您有Pandas数据框,则可以按id分组并按如下方式绘制每条线:

fig, ax = plt.subplots()

for key, grp in df.groupby('id'):
    ax = grp.plot(ax=ax, x='qtd', y='month', label=key)

fig.show()

在此处输入图片说明

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM