簡體   English   中英

python繪制多行時間序列

[英]python plot multiple line time serie

我正在嘗試創建一個matplotlib圖,其X軸上帶有時間戳,而脫落的Y上帶有分數,並且表示時間中id的分數的演變。

id  timestamp   score
1   1           100
1   2           115
1   3           120
2   2           12
2   2           20
2   3           15
2   4           30
3   1           14
3   2           100
5   2          20
6   3          20
7   4         100

例如,id = 1,應在圖中用一條線表示,並表示其得分隨時間的變化,

其他ID的情況相同。 (id的數目是未知的,我是從大型csv文件中獲得的)。

我正在嘗試多個情節,但沒有解決方案。

如何創建具有多個ID的圖。

您可以執行以下操作:

import numpy as np
import matplotlib.pylab as pl

id        = np.array([1,1,1,2,2,2,2,3,3,5,6,7])
timestamp = np.array([1,2,3,1,2,3,4,1,2,2,3,4])
score     = np.array([100,115,120,12,20,15,30,14,100,20,20,100]) 

pl.figure()
for i in np.unique(id):     # Loop over all the unique id's
    pw = np.where(id == i)  # which elements belong to this id
    pl.plot(timestamp[pw], score[pw], '-x', label=str(i))
pl.legend(frameon=False, loc='best')

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM