r - 您可以在 R 中将 geom_bar 饼图与 geom_point 图结合起来吗?

标签 r ggplot2 pie-chart geom-bar geom-point

有没有办法在geom_point图上绘制geom_pie?使用共享变量(此处:位置)

我见过人们在 map 上做馅饼plotting pie graphs on map in ggplot

但是我想知道是否有一些包或函数可以让你做到这一点?

这是我的数据和两个当前绘图:

data_point <- data.frame(
  Location=(1:7),
  Var1=c(13,8, 6,5,4,2,1),
  Var2 = c(7,8,9,10,11,12,13))

data_pie <- data.frame(
  Location=rep(1:7,5),
  Group= c(rep("A",7),rep("B",7),rep("C",7),rep("D",7),rep("E",7)),
  value=c(45.59,63.56,66.47,58.60,67.28,44.45,9.22,0.00,0.00,0.00,0.00,0.00,4.14,37.81,0.00,0.00,0.00,0.04,
0.03,25.15,34.58,52.86,35.61,24.66,26.13,18.98,12.71,6.61,2,1,9,15,14,14,12))

a<-ggplot(data_point, aes(Var1, Var2, label=1:7)) + 
  geom_point(size = 3, stroke = 2)+
  theme_classic()
b<- ggplot(data_pie, aes(x="", y=value, fill=Group)) +
  geom_bar(stat="identity", width=1) +
  coord_polar("y", start=0) +
  facet_wrap(~Location)+ scale_fill_brewer(palette="Dark2")
ggarrange(a,b, nrow = 1)

enter image description here

期望的情节: enter image description here

最佳答案

这是来自 scatterpie 包中的 geom_scatterpie 的一个想法:

加入数据

df <- data_pie %>% 
  pivot_wider(id_cols = Location,
              names_from = Group, 
              values_from =  value) %>% 
  left_join(data_point, by = "Location")

代码

library(scatterpie)

ggplot() +
  geom_scatterpie(data = df, aes(x = Var1, y = Var2,
                      group = Location), 
                  cols = c("A", "B", "C", "D", "E"))

情节 enter image description here

关于r - 您可以在 R 中将 geom_bar 饼图与 geom_point 图结合起来吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66479147/

相关文章:

r - 提取模型摘要并将其存储为新列

r - 与sparklyr一起使用时sample_n真的是随机样本吗?

R:加载 ggraph 时 ggplot2 出错

时间:2019-05-17 标签:c#devexpresspichart系列点颜色变化

javafx : PieChart incorrect data handles MouseEvent

python - PyQt 和 MatPlotLib -(嵌入式)没有 PyPlot 的饼图

r - 使用 gtsummary 包的宽格式多项逻辑回归结果表

regex - 使用 Regex 修改 CSV 中的特定列

r - 叠加两个 ggplot facet_wrap 直方图

r - 在包中包含 ggplot2 函数