我的資料
| ID | 時間 | 分數 | 變數1 | 變數 2 | 變數 3 |
|---|---|---|---|---|---|
| 1 | 1 | 100 | 1 | 2 | 1 |
| 1 | 2 | 150 | 1 | 2 | 1 |
| 2 | 1 | 200 | 2 | 3 | 4 |
| 2 | 2 | -10 | 2 | 3 | 4 |
| 2 | 3 | -70 | 2 | 3 | 4 |
| 3 | 1 | 100 | 1 | 2 | 2 |
| 3 | 2 | 200 | 1 | 2 | 2 |
我想制作一個將所有變陣列合在一起的ggplot。Y 變數是 = 分數。X 變數是 = 時間。對于每個分類變數(即 var1、var2),我想查看每個級別的效果。
我的一張圖代碼:
var1_graph=ggplot (DB, aes(Time, Score, group_by = ID))
facet_wrap(~var1)
geom_smooth()
theme_bw()
#####Var2
var2_graph = ggplot (DB, aes(Time,Score, group_by=ID))
facet_wrap(~var2)
geom_smooth()
theme_bw()
################
ggarrange(var1_graph, var2_graph, labels = c("A","B"),
ncol = 1, nrow = 2).
但這不是我想要的,因為我希望它們在同一個情節中,而不是合并多個情節。
可以使用“Pivot_longer 函式”來做到這一點嗎?
謝謝!
uj5u.com熱心網友回復:
你在尋找這樣的東西嗎?
pivot_longer用于收集一列中的變數以啟用分面。
library(tidyverse)
tribble(
~ID, ~Time, ~Score, ~Var1, ~Var2, ~Var3,
1, 1, 100, 1, 2, 1,
1, 2, 150, 1, 2, 1,
2, 1, 200, 2, 3, 4,
2, 2, -10, 2, 3, 4,
2, 3, -70, 2, 3, 4,
3, 1, 100, 1, 2, 2,
3, 2, 200, 1, 2, 2
) |>
pivot_longer(starts_with("Var"), names_to = "var", values_to = "level") |>
ggplot(aes(Time, Score, group = level))
geom_line()
facet_grid(level ~ var)

由reprex 包(v2.0.1)創建于 2022-06-07
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/488009.html
上一篇:通過閃亮的刷子選擇資料
