R 在所有面上添加相同的密度图

R 在所有面上添加相同的密度图,r,R,下面我有一个示例代码。我已经用ggplot构建了一个图形,它几乎就在那里,但我想在y的所有面上添加一条额外的曲线。最终输出应该与所附的图像类似。我不知道该怎么做 x <- iris[-1:-3] bw <- 1 nbin <- 100 y <- head(iris, 50)[2] ggplot(x, aes(x = Petal.Width)) + geom_density(aes(y = bw *..count.., fill = Species), size =

下面我有一个示例代码。我已经用ggplot构建了一个图形,它几乎就在那里,但我想在y的所有面上添加一条额外的曲线。最终输出应该与所附的图像类似。我不知道该怎么做

x <- iris[-1:-3]
bw <- 1
nbin <- 100
y <- head(iris, 50)[2]

ggplot(x, aes(x = Petal.Width)) +
  geom_density(aes(y = bw *..count.., fill = Species), size = 1, alpha = 0.4) + 
  facet_wrap(~Species)+
  scale_x_continuous(labels = scales::math_format(10^.x), limits = c(0, 5), expand = c(0,0)) + 
  scale_y_continuous(expand = c(0,0), limits = c(0, NA)) +
  annotation_logticks(sides = "b", short=unit(-1,"mm"), mid=unit(-2,"mm"), long=unit(-3,"mm")) +
  coord_cartesian(clip='off') + theme(panel.background = element_blank(), 
                                      panel.border = element_rect(colour = "black", fill=NA)) 

x这是否实现了您希望实现的目标

我相信有更好的方法;基本上,我已经生成了三个版本的
y
数据,并调整了分组变量,以允许ggplot的
facet\u wrap
fill
管理外观

如果有一种方法可以让一组数据在所有方面都不重复出现,那就太好了


图书馆(GG2)
图书馆(dplyr)
图书馆(tidyr)
x1%
变异(var=“花瓣宽度”)%>%
重命名(val=Petal.Width)
df%
变异(var=“萼片宽度”,
spp1=“setosa”,
spp2=“versicolor”,
spp3=“virginica”)%%>%
pivot_longer(cols=以“spp”开头),name_to=“temp”,value_to=“Species”)%>%
选择(-temp)%>%
重命名(val=萼片宽度)%>%
绑定_行(x1)%>%
突变(g1=情况_,当(var==“萼片宽度”~“所有物种:萼片宽度”,
真~0(种,“:花瓣宽度”))
ggplot(df,aes(x=val))+
几何密度(aes(y=bw*.计数,填充=g1),尺寸=1,α=0.4)+
面_包装(~种)+
scale_x_continuous(labels=scales::math_format(10^.x),limits=c(0,5),expand=c(0,0))+
比例y连续(扩展=c(0,0),极限=c(0,NA))+
注释(侧面=“b”,短=单位(-1,“毫米”),中=单位(-2,“毫米”),长=单位(-3,“毫米”))+
坐标笛卡尔(clip='off')+主题(panel.background=element_blank(),
panel.border=元素(color=“black”,fill=NA))


由(v0.3.0)创建于2020-07-01这是否实现了您希望实现的目标

我相信有更好的方法;基本上,我已经生成了三个版本的
y
数据,并调整了分组变量,以允许ggplot的
facet\u wrap
fill
管理外观

如果有一种方法可以让一组数据在所有方面都不重复出现,那就太好了


图书馆(GG2)
图书馆(dplyr)
图书馆(tidyr)
x1%
变异(var=“花瓣宽度”)%>%
重命名(val=Petal.Width)
df%
变异(var=“萼片宽度”,
spp1=“setosa”,
spp2=“versicolor”,
spp3=“virginica”)%%>%
pivot_longer(cols=以“spp”开头),name_to=“temp”,value_to=“Species”)%>%
选择(-temp)%>%
重命名(val=萼片宽度)%>%
绑定_行(x1)%>%
突变(g1=情况_,当(var==“萼片宽度”~“所有物种:萼片宽度”,
真~0(种,“:花瓣宽度”))
ggplot(df,aes(x=val))+
几何密度(aes(y=bw*.计数,填充=g1),尺寸=1,α=0.4)+
面_包装(~种)+
scale_x_continuous(labels=scales::math_format(10^.x),limits=c(0,5),expand=c(0,0))+
比例y连续(扩展=c(0,0),极限=c(0,NA))+
注释(侧面=“b”,短=单位(-1,“毫米”),中=单位(-2,“毫米”),长=单位(-3,“毫米”))+
坐标笛卡尔(clip='off')+主题(panel.background=element_blank(),
panel.border=元素(color=“black”,fill=NA))


由(v0.3.0)

创建于2020-07-01,您的示例代码生成了一个与所需输出相比有许多缺失元素的绘图,因此我一点也不清楚(1)您要求的是什么,(2)您的“附加曲线”数据来自何处或(3)您的荧光数据在何处?(4) 我没有在您所需的输出中看到所有三个面都通用的曲线。该图像只是一个示例图形。我基本上希望将“y”的密度曲线添加到写入ggplot代码的每个面上。您的示例代码生成的绘图与您所需的输出相比有许多缺少的元素,所以我一点也不清楚(1)你要求什么,(2)你的“附加曲线”的数据来自哪里,或者(3)你的荧光数据来自哪里?(4) 我没有在您想要的输出中看到所有三个面都通用的曲线。该图像只是一个示例图形。我基本上希望将“y”的密度曲线添加到写入ggplot代码的每个面上。您使用的是哪个版本的R?运行x1和dfR版本4.0.0(2020-04-24)——“植树节”,RStudio版本1.3.959时出现错误。您是否安装了
dplyr
tidyr
?您使用的是哪个版本的R?运行x1和dfR版本4.0.0(2020-04-24)——“植树节”,RStudio版本1.3.959时出现错误。您是否安装了
dplyr
tidyr