Округление процентов в графических круговых диаграммах - PullRequest
0 голосов
/ 16 мая 2018
label=c("<25%","25 - 50%",">75%")
values=c(4,2,3)
df=data.frame(label,values)
plot_ly(df, labels = ~label, values = ~values,text=values,textposition="auto", type = 'pie') %>%layout(title = 'Percentage Effort time',showlegend=T,
     xaxis = list(showgrid = FALSE, zeroline = FALSE, showticklabels = FALSE),
     yaxis = list(showgrid = FALSE, zeroline = FALSE, showticklabels = FALSE))

Когда я запускаю этот код, я получаю круговую диаграмму с процентами и числами. Как получить проценты, округленные до целых чисел, а не десятичных знаков?

Pie chart

1 Ответ

0 голосов
/ 16 мая 2018

Вы можете использовать textinfo='text', чтобы скрыть значения в процентах и ​​предоставить пользовательскую отформатированную метку с text:

    text = ~paste(round((values / sum(values))*100, 0)),
    textinfo='text',

Полный пример:

library(magrittr)
library(plotly)

label=c("<25%","25 - 50%",">75%")
values=c(4,2,3)
df=data.frame(label,values)
plot_ly(df, 
        labels = ~label, 
        values = ~values,
        text = ~paste(round((values / sum(values))*100, 0)),
        #textinfo='none',
        #textinfo='label+value+percent',
        textinfo='text',
        textposition="auto", type = 'pie') %>% layout(title = 'Percentage Effort time', showlegend=T,
         xaxis = list(showgrid = FALSE, zeroline = FALSE, showticklabels = FALSE),
         yaxis = list(showgrid = FALSE, zeroline = FALSE, showticklabels = FALSE)
        )
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...