Чтобы подготовить данные для построения графика, сначала необходимо выполнить преобразование из широкого в длинный. Похоже, вы хотите построить каждую из 4 категорий (4 измерения для каждого дерева) отдельно. Если это так, будет group_by
каждое из этих измерений, а затем рассчитать среднее значение, стандартное отклонение и стандартную ошибку для каждого измерения. Пожалуйста, дайте мне знать, если вы это имели в виду.
library(tidyverse)
library(ggplot2)
df %>%
pivot_longer(cols = -Tree, names_to = "measure", values_to = "value", names_pattern = "^Avg_number_(\\d)m") %>%
group_by(measure) %>%
summarise(mean = mean(value),
SD = sd(value),
n = n(),
SE = SD/sqrt(n)) %>%
ggplot(aes(x = measure, y = mean)) +
geom_bar(stat = "identity", position = "dodge", width = .5) +
geom_errorbar(aes(ymax = mean + SE, ymin = mean - SE), position = position_dodge(.5), width = .2)
Сюжет
![barplot with error bars](https://i.stack.imgur.com/9aasr.png)