根据气象数据(温度、风和湿度的每小时值),我设法绘制了风速和风向的时间序列。现在我想在时间序列图上添加风向量。在这里您可以看到我想要的输出(在实际绘图上绘制的箭头)。
我正在使用 ggplot2,一直在查看 stackoverflow、ggplot2 包文档(将继续),但没有找到解决方案。任何想法或指示将是一个起点。
提前致谢
编辑问题 正如@slowlearner 在评论中所建议的,我在此处添加代码和数据以制作可重现的示例。看起来 geom_segment 可以解决问题。我设法在geom_segment 中计算了yend,但无法弄清楚如何找到xend,因为x 轴是时间轴。我有风速和风向数据,所以我可以计算 geom_segment 的 x,y 风分量,但 x 需要转换为时间格式。
这是用于绘图(温度)和数据的代码
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)
}
按照我试过的 geom_segment 文档
p=ggplot(tore, aes(x =datetime, y = 5))
p + geom_segment(aes(xend = datetime, yend = 5 + v), arrow = arrow(length = unit(0.1,"cm")))
得到这样的图。你可以看到x坐标是日期时间,我应该如何转换风分量来得到xend?现在 xend 等于 datetime 但我想要类似“datetime + xwindcomp”的东西
谢谢你的帮助