I am just getting started with ggplot2()
(data visualization) in R
. The data I have has different workloads in row format. Each of these column has fou
Change to the "superior" long format (here I use tidyr::gather
), then map your columns to aesthetics, with a column geom with stacked position (bar is a special case which counts number of observations).
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())