2013-09-26 43 views
8

tôi có một loạt các điểm ra lệnh như hình dưới đây: enter image description hereggplot2 để âm mưu dòng

Tuy nhiên khi tôi cố gắng để kết nối các điểm bằng một đường, tôi nhận được kết quả như sau: enter image description here

Cốt truyện đang kết nối từ 26 đến 1 và 25 đến 9 và 10 (một số lỗi), thay vì theo thứ tự. Mã cho âm mưu các điểm được đưa ra dưới đây:

p<-ggplot(aes(x = x, y = y), data = spat_loc) 
p<-p + labs(x = "x Coords (Km)", y="Y coords (Km)") +ggtitle("Locations") 
p<-p + geom_point(aes(color="Red",size=2)) + geom_text(aes(label = X)) 
p + theme_bw() 

Và đối với âm mưu dòng tôi chỉ sử dụng: p + geom_line ((aes (x = x, y = y)), color = "blue") + theme_bw()

các tập tin trong đó có những vị trí có cấu trúc sau:

X x y 
1 210 200 
. 
. 
. 

trong đó x là ID số và x và y là các cặp tọa độ.

Tôi cần làm gì để làm cho dòng theo thứ tự các điểm?

Trả lời

15

geom_path() sẽ tham gia các điểm theo thứ tự ban đầu, vì vậy bạn có thể đặt hàng dữ liệu theo cách bạn muốn tham gia và sau đó chỉ cần + geom_path(). Dưới đây là một số dữ liệu giả:

dat <- data.frame(x = sample(1:10), y = sample(1:10), order = sample(1:10)) 
ggplot(dat[order(dat$order),], aes(x, y)) + geom_point() + geom_text(aes(y = y + 0.25,label = order)) + 
    geom_path() 

enter image description here

+0

trình hoàn hảo. Cảm ơn. – DotPi