Можем ли мы построить процент с Plot_ly - PullRequest
0 голосов
/ 06 октября 2019

есть ли способ построить проценты с использованием plot_ly. Например, нижеприведенный график используется для подсчета количества вырезов из набора данных по бриллиантам:

plot_ly(diamonds, x = ~cut)

enter image description here

Но я попытался построить процентное соотношение для резки,Например, мне нужен процент «Хорошо» к общему количеству. Есть ли способ получить его?

Ответы [ 2 ]

0 голосов
/ 07 октября 2019

Вы можете использовать data.table и ggplot2:

library(data.table)
library(ggplot2)

dt <- data.table(diamonds)

Рассчитать количество записей по каждому разрезу, а затем вычислить prop.table из этих подсчетов:

result <- dt[, .N, by = cut][, .(cut, N, percentCut = prop.table(N))]

Теперь вы можете построить его с помощью ggplot и использовать библиотеку scales, чтобы получить красивую ось Y в формате процентов:

p <- ggplot(result, aes(x = cut, y = percentCut))+
        geom_col()+
        scale_y_continuous(labels = scales::percent)

Теперь вы можете передать p для построения, если это такВы хотите:

plotly::ggplotly(p)
0 голосов
/ 06 октября 2019

Это можно сделать так. Во-первых, создайте процент для каждой категории вырезов

diamonds %>% group_by(cut) %>% summarize(perc = n()/53940*100)

суммарный набор данных

Во-вторых, передайте результирующий набор данных в plot_ly ()

diamonds %>% group_by(cut) %>% summarize(perc = n()/53940*100) %>% plot_ly(x = ~cut, y = ~perc)

R Участок

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...