簡體   English   中英

使用ggplot從數據幀繪制不規則時間序列(多個)

[英]Plotting irregular time-series (multiple) from dataframe using ggplot

我有一個df,其結構如下:

   UnitNo        Time           Sensor
0   1.0   2016-07-20 18:34:44    19.0
1   1.0   2016-07-20 19:27:39    19.0
2   3.0   2016-07-20 20:45:39    17.0
3   3.0   2016-07-20 23:05:29    17.0
4   3.0   2016-07-21 01:23:30    11.0
5   2.0   2016-07-21 04:23:59    11.0
6   2.0   2016-07-21 17:33:29    2.0
7   2.0   2016-07-21 18:55:04    2.0

我想創建一個時序圖,其中每個UnitNo都有自己的線(顏色),並且y軸值對應於Sensor ,而x軸為Time 我想在ggplot執行此ggplot ,但是在弄清楚如何有效執行此操作時遇到了麻煩。 我看了以前的示例,但是它們都有規律的時間序列,即,每個變量的觀察都在同一時間發生,這使得創建時間索引變得容易。 我想我可以循環遍歷並將數據添加到plot(?),但是我想知道是否存在更有效/更優雅的方法。

我認為你需要pivotset_indexunstackDataFrame.plot

df.pivot('Time', 'UnitNo','Sensor').plot()

要么:

df.set_index(['Time', 'UnitNo'])['Sensor'].unstack().plot()

圖形

如果重復:

df = df.groupby(['Time', 'UnitNo'])['Sensor'].mean().unstack().plot()
df = df.pivot_table(index='Time', columns='UnitNo',values='Sensor', aggfunc='mean').plot()
df.set_index('Time').groupby('UnitNo').Sensor.plot();

在此處輸入圖片說明

暫無
暫無

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

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