r-plotly:饼图,其值而不是百分比

Nib*_*ced 4 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
Run Code Online (Sandbox Code Playgroud)

我不敢相信以前没有人问过这个问题,但我确实在之前的问题或情节文档中找不到它。如果这是一个重复的问题,我们深表歉意。

Mat*_*att 6

您可以创建一个名为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
Run Code Online (Sandbox Code Playgroud)

编辑

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

textinfo = "text + values"
Run Code Online (Sandbox Code Playgroud)

  • @Nibood_the_slightly_advanced 我编辑了答案以展示如何包含值和百分比 (2认同)