您好,我想知道是否有一種有效的 JMP 方法可以從多個樣本的時間序列資料的資料表中繪製多條線圖。
所以,我的數據表如下所示:
index datetime sampleID value
0 93 2024-03-12 00:09:47 B 0.852
1 46 2024-03-12 00:18:36 A 0.377
2 29 2024-03-12 00:50:22 B 0.049
3 99 2024-03-12 01:11:40 B 0.441
4 52 2024-03-12 01:12:09 A 0.237
5 66 2024-03-12 01:26:29 A 0.607
6 28 2024-03-12 01:27:56 A 0.669
7 64 2024-03-12 01:33:11 A 0.074
8 16 2024-03-12 01:52:59 B 0.964
9 55 2024-03-12 01:56:17 A 0.960
-sampleID 給予樣本 ID,在本例中為 A 或 B。實際上,可能有 >100 個唯一的樣本 ID
- datetime 給出每次測量的時間戳記。這對每一行都是唯一的。
- value 為測量值
- 每個樣本的行數可能不同
我想製作一個像這樣的時間序列線圖:

在Python中我會這樣做
#example on how to do it in python
import pandas as pd
import datetime, random
N = 100
datetime_rand = [datetime.datetime.now().replace(hour=0, minute=0, second=0, microsecond=0) + datetime.timedelta(seconds=random.randint(0, 86400)) for _ in range(N)]
df = pd.DataFrame( dict( datetime = datetime_rand, sampleID = np.random.choice(["A", "B"], N), value = rand(N)))
df = df.sort_values(by="datetime").reset_index()
#now we have this kind of dataframe
# index datetime sampleID value
#0 69 2024-03-12 00:04:06 A 0.027
#1 96 2024-03-12 00:05:33 B 0.248
#2 16 2024-03-12 00:18:06 B 0.276
#3 81 2024-03-12 00:34:32 A 0.737
#4 27 2024-03-12 01:01:49 A 0.804
#...
#then I want to visuzalize the raw data with line plots:
for sampleID, group in df.groupby("sampleID"):
if sampleID == "A": plotspec = "bo-"
else: plotspec = "ro-"
plot( group.datetime, group.value, plotspec)我想在 JMP 中做同樣的事情。我的分析工作流程的下一步是根據時間戳對數據進行一些分箱,並透過平行圖可視化該數據,但通常需要以日期時間作為 x 軸繪製數據的最原始形式。
在圖形產生器中,將日期時間拖曳至 X 軸,將數值拖曳至 Y 軸,並將樣本 ID 拖曳至疊加放置區域。
右鍵單擊圖表並選擇新增=>線

嗨@asj ,
有一個簡單的方法。使用圖形選單中的圖形產生器。 Y 上的值、X 上的日期時間和疊加中的樣本 ID。剩下的就是在頂部選擇圖形類型的問題(在 PC 中按住 Control 單擊/在 Mac 上單擊 Shift 單擊多種類型以獲得您想要的)。像這樣的東西:

這對你有用嗎?幫助選單中有更多關於使用圖形產生器進行繪圖的詳細資訊。有些圖形類型在圖形產生器中很容易完成,但使用 Python 可能需要更多工作。
乾杯,