Tôi đang gặp rắc rối với ggplot cố gắng vẽ 2 chuỗi thời gian không đầy đủ trên cùng một biểu đồ trong đó dữ liệu y không có cùng giá trị trên trục x (năm) - NA hiện đối với một số năm:Biểu đồ đường ggplot có giá trị NA
test<-structure(list(YEAR = c(1937, 1938, 1942, 1943, 1947, 1948, 1952,
1953, 1957, 1958, 1962, 1963, 1967, 1968, 1972, 1973, 1977, 1978,
1982, 1983, 1986.5, 1987, 1993.5), A1 = c(NA, 24, NA, 32, 32,
NA, 34, NA, NA, 18, 12, NA, 10, NA, 11, NA, 15, NA, 24, NA, NA,
25, 26), A2 = c(40, NA, 38, NA, 25, NA, 26, NA, 20, NA, 17,
17, 17, NA, 16, 18, 21, 18, 17, 25, NA, NA, 26)), .Names = c("YEAR", "A1",
"A2"), row.names = c(NA, -23L), class = "data.frame")
Các mã sau đây tôi đã cố gắng kết quả đầu ra một mớ hỗn độn rời rạc:
ggplot(test, aes(x=YEAR)) +
geom_line(aes(y = A1), size=0.43, colour="red") +
geom_line(aes(y = A2), size=0.43, colour="green") +
xlab("Year") + ylab("Percent") +
scale_x_continuous(limits=c(1935, 1995), breaks = seq(1935, 1995, 5),
expand = c(0, 0)) +
scale_y_continuous(limits=c(0,50), breaks=seq(0, 50, 10), expand = c(0, 0))
Làm thế nào tôi có thể giải quyết vấn đề này?
Cảm ơn, tôi đã thử 'melt' nhưng bỏ lỡ' na.omit'. Làm thế nào tôi có thể thay đổi linetype cho mỗi dòng? – user2568648
Tương tự như vậy, các màu được thay đổi ở trên. 'linetype = variable' trong cuộc gọi aes, sau đó (tùy chọn)' scale_linetype_manual' nếu bạn muốn chỉ định linetype nào – arvi1000