Строки в виде столбчатой ​​диаграммы с использованием ggplot2 в R - PullRequest
0 голосов
/ 17 мая 2018

Я только начинаю с ggplot2() (визуализация данных) в R. У меня есть данные с различными рабочими нагрузками в формате строки. Каждый из этих столбцов имеет четыре различных параметра, которые я хочу построить в виде столбчатой ​​диаграммы с накоплением, предпочтительно используя ggplot2().

Воспроизводимые данные

Workload P1   P2   P3   P4
W1       0.3  0.2  0.4  0.1
W2       0.5  0.1  0.3  0.1
W3       0.2  0.3  0.4  0.1
W4       0.3  0.2  0.5  0.1

Я хочу построить Workload как x-axis, и тогда P1, P2, P3 и P4 будут составлены для каждой рабочей нагрузки на y-axis.

Я пробовал много вещей, но я запутался с ggplot2() параметрами и аргументами. Если кто-нибудь может подсказать, как я могу это сделать, это будет полезно.

Спасибо.

1 Ответ

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

Измените на «улучшенный» длинный формат (здесь я использую tidyr::gather), затем сопоставьте ваши столбцы с эстетикой, с геометрией столбца со сложенной позицией (особый случай bar, который подсчитывает количество наблюдений).

library(tidyverse)

df <- read.table(text = "
Workload P1   P2   P3   P4
W1       0.3  0.2  0.4  0.1
W2       0.5  0.1  0.3  0.1
W3       0.2  0.3  0.4  0.1
W4       0.3  0.2  0.5  0.1", header = TRUE)


df_long <- df %>% 
  gather(P, value, P1:P4)

ggplot(df_long, aes(x = Workload, y = value, fill = P)) + 
  geom_col(position = position_stack())

enter image description here

...