Từ dữ liệu khí tượng (giá trị theo giờ của nhiệt độ, gió và độ ẩm) Tôi quản lý để vẽ lô thời gian tốc độ và hướng gió. Bây giờ tôi muốn thêm các vectơ gió vào lô thời gian. Ở đây bạn có thể thấy đầu ra tôi muốn (mũi tên được vẽ trên ô thực tế).ggplot2 loạt thời gian gió với mũi tên/vectơ
Tôi đang sử dụng ggplot2, được tìm kiếm thông qua stackoverflow, tài liệu gói ggplot2 (sẽ tiếp tục) nhưng không có giải pháp được tìm thấy. Bất kỳ ý tưởng hoặc chỉ dẫn nơi để tìm sẽ là một điểm khởi đầu.
Cảm ơn trước
EDIT HỎI Như đã đề cập trong một chú thích bởi @slowlearner tôi thêm ở đây mã và dữ liệu để đưa một ví dụ tái sản xuất. Có vẻ như geom_segment có thể làm được điều này. Tôi quản lý để tính toán yend trong geom_segment nhưng không thể tìm ra cách để tìm xend như trục x là một trục thời gian. Tôi đã có dữ liệu tốc độ và hướng gió để tôi có thể tính toán các thành phần gió x, y cho geom_segment nhưng x cần được chuyển đổi thành định dạng thời gian.
Đây là mã dùng cho cốt truyện (nhiệt độ) và data
for (i in 1:2) {
rams=subset(data,data$stat_id %in% i)
tore=subset(torre,torre$stat_id %in% i)
# Gràfica en ggplot
# Gráfica de evolución temporal de las estaciones de la zona
gtitol=places$nom[places$stat_id == i]
myplot=ggplot(data=rams,aes(x=datetime, y=tempc, colour="RAMS")) +
geom_line() + ylab("Temperatura (ºC)") + xlab(" ") +
ggtitle(gtitol) + theme(legend.title=element_blank()) + theme(legend.position="bottom") +
scale_y_continuous(limits = c(0,40)) +
geom_line(data=tore,aes(x=datetime,y=temp,colour = "Torre"))
#scale_y_continuous(breaks = round(seq(min(data$tempc), max(data$tempc), by = 2),0))
ggsave(myplot,filename=paste("RAMS-",i,".png",sep=""),width=7.78,height=5.79)
}
Sau docs geom_segment tôi đã cố gắng
p=ggplot(tore, aes(x =datetime, y = 5))
p + geom_segment(aes(xend = datetime, yend = 5 + v), arrow = arrow(length = unit(0.1,"cm")))
Bắt loại hình. Bạn có thể thấy x tọa độ là datetime, làm thế nào tôi nên chuyển đổi thành phần gió để có được xend? Bây giờ xend bằng datetime nhưng tôi muốn một cái gì đó như "datetime + xwindcomp"
Nhờ sự giúp đỡ của bạn
Xem 'geom_segment' và lưu ý rằng nó có đối số 'mũi tên'. – joran
kiểm tra calenderPlot() từ gói không khí mở, nó có thể là một số trợ giúp, mặc dù nó không làm cho chuỗi thời gian. – eliavs
'geom_segment (aes (x = 0, y = 0, xend = xend, yend = 0), dòng, mũi tên = mũi tên (loại =" đóng ", góc = 23), màu =" đỏ ", size = 1.0) 'là những gì tôi sử dụng để vẽ một mũi tên trong biểu đồ ggplot. Đó có phải là điều bạn cần biết không? Btw: 'arrow' là một hàm trong gói' grid'. – ROLO