Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R:使用ggplot2在圆形条形图上添加箭头_R_Ggplot2 - Fatal编程技术网

R:使用ggplot2在圆形条形图上添加箭头

R:使用ggplot2在圆形条形图上添加箭头,r,ggplot2,R,Ggplot2,我正在尝试使用ggplot2绘制物候图,目前看起来如下: 现在我想添加一个表示平均角度的箭头(用“o=角度”和“r=大小”),如下()。我找到了一种方法,使用geom_vline()和线性插值来添加一条线,以正确的角度绘制它,但我找不到一种方法来修改它的长度并给它一个箭头状的形式 有可能用ggplot2做吗 提前谢谢 这是我的密码 Mes<-c("Jan", "Feb", "Mar", "Apr", &

我正在尝试使用ggplot2绘制物候图,目前看起来如下:

现在我想添加一个表示平均角度的箭头(用“o=角度”和“r=大小”),如下()。我找到了一种方法,使用geom_vline()和线性插值来添加一条线,以正确的角度绘制它,但我找不到一种方法来修改它的长度并给它一个箭头状的形式

有可能用ggplot2做吗

提前谢谢

这是我的密码

   Mes<-c("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov"
      , "Dec")
mess<-(seq(1,12,1))
FlbudBr<-c(0,12,25,44,32,5,12,1,4,56,11,10)
dg<-c(15, 45,75,105,135,165,195,225,255,285,315,345)
data<-data.frame(Mes,mess,FlbudBr,dg)
library(NISTunits)
data$cos<-cos(NISTdegTOradian(data$dg))
data$sin<-sin(NISTdegTOradian(data$dg))
x<-sum(data$FlbudBr*data$cos)/sum(data$FlbudBr)
y<-sum(data$FlbudBr*data$sin)/sum(data$FlbudBr)
r<-sqrt((x)^2+(y)^2)
o<-180-NISTradianTOdeg(acos(x/r))

library(ggplot2)
library(ggthemes)


ggplot(data, aes(mess, FlbudBr)) +
  coord_polar() +
  geom_bar(stat = "identity", fill = "#F8C471", color ="black", width = 0.8) +
  scale_x_continuous(breaks = 1:12, labels = data$Mes, expand = c(.007,0)) +
  geom_hline(yintercept = seq(0, 15, by = 5), color = "gray90", alpha= 0.4) +
  geom_vline(xintercept= ((139.57-135)/(150-135)*(5.5-5)+5))+
  ylab("Fl bud Br")+
  theme_bw()+
  theme(panel.grid.minor = element_blank(), axis.title.x = element_blank(), 
        panel.border = element_blank())

Mes使用
注释
。使用
yend
指定行长度
arrow=arrow()
将添加箭头

p <- ggplot(data, aes(mess, FlbudBr)) +
  coord_polar() +
  geom_bar(stat = "identity", fill = "#F8C471", color ="black", width = 0.8) +
  scale_x_continuous(breaks = 1:12, labels = data$Mes, expand = c(.007,0)) +
  geom_hline(yintercept = seq(0, 15, by = 5), color = "gray90", alpha= 0.4) +
  ylab("Fl bud Br")+
  theme_bw()+
  theme(panel.grid.minor = element_blank(), axis.title.x = element_blank(), 
        panel.border = element_blank())

p使用
注释
。使用
yend
指定行长度
arrow=arrow()
将添加箭头

p <- ggplot(data, aes(mess, FlbudBr)) +
  coord_polar() +
  geom_bar(stat = "identity", fill = "#F8C471", color ="black", width = 0.8) +
  scale_x_continuous(breaks = 1:12, labels = data$Mes, expand = c(.007,0)) +
  geom_hline(yintercept = seq(0, 15, by = 5), color = "gray90", alpha= 0.4) +
  ylab("Fl bud Br")+
  theme_bw()+
  theme(panel.grid.minor = element_blank(), axis.title.x = element_blank(), 
        panel.border = element_blank())
p