3 回答

TA貢獻1794條經驗 獲得超7個贊
有一種非常簡單的方法可以使用單獨的面板或同一面板繪制數據框中的所有列:
plot.ts(data)
哪個產生(其中X1-X4是列名):
查看所有選項的?plot.ts。
如果您不想進一步控制繪圖功能并且不使用循環,則還可以執行以下操作:
par(mfcol = c(ncol(data), 1))
Map(function(x,y) plot(x, main =y), data, names(data))

TA貢獻1884條經驗 獲得超4個贊
您可以赴湯蹈火,你的解決方案轉換為一個lapply,sapply或apply致電。(我看到@jonw顯示了一種執行此操作的方法。)除此之外,您已經擁有的代碼完全可以接受。
如果這些都是時間序列或類似的時間序列,則以下可能是合適的替代方法,它將每個序列在其自己的面板中繪制在一個繪圖區域上。我們使用該zoo軟件包是因為它確實很好地處理了有序數據。
require(zoo)
set.seed(1)
## example data
dat <- data.frame(X = cumsum(rnorm(100)), Y = cumsum(rnorm(100)),
Z = cumsum(rnorm(100)))
## convert to multivariate zoo object
datz <- zoo(dat)
## plot it
plot(datz)
這使:
- 3 回答
- 0 關注
- 1392 瀏覽
添加回答
舉報