Plot garis terputus di ggplot [duplikat]
Saya ingin membuat grafik dengan garis terputus menggunakan ggplot
# Sample data
x <- seq(1:100)
y <- c(rnorm(25, mean = 1, sd = 1), rnorm(25, mean = 2, sd = 1), rnorm(25, mean = 3, sd = 1), rnorm(25, mean = 4, sd = 1))
z <- rep(1:4, each = 25)
tempdf <- data.frame(cbind(x,y,z))
Menggunakan kode
ggplot(data=tempdf, aes(x = x)) +
geom_line(aes(y = y), color = "blue") +
geom_line(aes(y = z), color = "red", size = 1)
Saya mendapatkan hasil ini
Namun saya ingin membuat sesuatu seperti (perhatikan garis merah tidak terhubung pada langkah-langkah)
Saya mencoba menggunakan geom_segment
tetapi tidak menemukan cara yang benar
ggplot(data=tempdf, aes(x = x)) +
geom_line(aes(y = y), color = "blue") +
geom_segment(x = x, y = z, xend = x+25, yend = z)
berikan ini
Jawaban
2 GregorThomas
Gunakan group
estetika untuk menentukan baris mana yang terhubung:
ggplot(data=tempdf, aes(x = x)) +
geom_line(aes(y = y), color = "blue") +
geom_line(aes(y = z, group = z), color = "red", size = 1)
(Ini bekerja dengan mudah untuk sampel data Anda dengan group = z
karena Anda ingin garis terhubung jika mereka memiliki nilai yang sama z
DAN z
nilainya unik. Cara yang lebih kuat akan menambahkan kolom untuk tujuan ini.)
Kiat Pemilik Anjing yang Bermanfaat: Mengapa Penting untuk Membiarkan Anjing Anda Mengendus di Jalan
Taylor Sheridan Baru Menambahkan 1 Bintang 'Yellowstone' Favoritnya ke Pemeran 'Lawmen: Bass Reeves'