繁体   English   中英

R 中的圆饼图

[英]Pie-Donut Chart in R

我想创建一个如下图所示的 Pie-Donut 图表:

在此处输入图像描述

为此,我正在使用下一个代码:

PieDonut(df1, aes(Species, Costs, count=Entries),
         ratioByGroup = F, explode = 1, r0 = 0.5, r1 = 0.7)

但我没有得到两个不同的(独立的)图表。 这是结果: 在此处输入图像描述

正如您所看到的,两组的比率是不一样的:第一个甜甜圈应该根据变量“Costs”,第二个应该根据变量“Entries”

这是我正在使用的数据:

structure(list(Species = c("Cercopagis pengoi", "Dreissena polymorpha"
), Costs = c(0.27, 33.27), Entries = c(7L, 5L), fraction = c(0.00805008944543828, 
0.991949910554562), ymax = c(0.00805008944543828, 1), ymin = c(0, 
0.00805008944543828)), row.names = c(NA, -2L), class = c("tbl_df", 
"tbl", "data.frame"))

我真的很感激一些帮助,提前致谢。

在这里,我得到了一个plotly选项。 您可以使用两个add_pie使用 plotly 创建两个饼图,一个用于孔,一个用于外圆。 您可以使用以下代码:

library(plotly)
library(dplyr)

plot_ly(df1) %>%
  add_pie(labels = ~`Species`, values = ~`Costs`, 
          type = 'pie', hole = 0.7, sort = F,
          marker = list(line = list(width = 2))) %>%
  add_pie(df1, labels = ~`Species`, values = ~`Entries`, 
          domain = list(
            x = c(0.15, 0.85),
            y = c(0.15, 0.85)),
          sort = F) %>%
  layout(title = "Chart", 
         legend = list(title = list(text = "Species")))

Output:

在此处输入图像描述

数据

df1 <- structure(list(Species = c("Cercopagis pengoi", "Dreissena polymorpha" ), Costs = c(0.27, 33.27), Entries = c(7L, 5L), fraction = c(0.00805008944543828,  0.991949910554562), ymax = c(0.00805008944543828, 1), ymin = c(0,  0.00805008944543828)), row.names = c(NA, -2L), class = c("tbl_df",  "tbl", "data.frame"))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM