r-plotly:饼图,其值代替百分比

时间:2019-10-16 12:14:54

标签: r plotly

我需要用R绘制饼图,但我不想显示百分比,而是希望将原始计数叠加在饼图部分(即300、250、110、190)上。

下面的代码制作饼图,但带有百分比。

WhatIHave <- c("Money" = 300,
            "Dinosaurs" = 250,
            "Aether" = 110,
            "Discussions" = 190)
data <- data.frame("Category" = names(WhatIHave), WhatIHave)

p <- plot_ly(data, labels = ~Category, values = ~WhatIHave, type = 'pie') %>%
    layout(title = 'Lovely Pie',
           xaxis = list(showgrid = FALSE, zeroline = FALSE, showticklabels = FALSE),
           yaxis = list(showgrid = FALSE, zeroline = FALSE, showticklabels = FALSE))
p

我不敢相信以前没有问过这个问题,但是我确实在以前的问题或密谋文档中找不到它。抱歉,如果发现这是一个重复的问题。

1 个答案:

答案 0 :(得分:1)

您可以创建一个称为1.9.2019. 12:55 K324645 345,7 1.9.2019. 17:55 K324645 218,3 2.9.2019. 02:51 K324645 323,4 2.9.2019. 10:35 K324645 125,5 3.9.2019. 11:46 K324645 355,2 3.9.2019. 17:55 K324645 656,5 3.9.2019. 20:51 K324645 268,4 的字符向量以在饼图中使用

vals

编辑

如果要同时包含值和百分比,则可以执行以下操作:

vals <- paste(data$WhatIHave, sep = "")

p <- plot_ly(data, labels = ~Category, values = ~WhatIHave, type = 'pie', textinfo = "text", text = vals) %>%
    layout(title = 'Lovely Pie',
           xaxis = list(showgrid = FALSE, zeroline = FALSE, showticklabels = FALSE),
           yaxis = list(showgrid = FALSE, zeroline = FALSE, showticklabels = FALSE))
p