В приведенном ниже примере у меня есть простой график средних значений с планками ошибок стандартного отклонения для осей X и Y. Я хотел бы контролировать ширину полосы ошибок, чтобы обе оси всегда отображали одинаковый размер.
В идеале я хотел бы, чтобы ширина/высота полосы были того же размера, что и символы (т.е. в данном случае cex = 3), независимо от окончательных размеров графика. Есть ли способ сделать это?
# Load required packages:
library(ggplot2)
library(plyr)
# Create dataset:
DF <- data.frame(
group = rep(c("a", "b", "c", "d"),each=10),
Ydata = c(seq(1,10,1),seq(5,50,5),seq(20,11,-1),seq(0.3,3,0.3)),
Xdata = c(seq(1,10,1),seq(5,50,5),seq(20,11,-1),seq(0.3,3,0.3)))
# Summarise data:
subDF <- ddply(DF, .(group), summarise,
X = mean(Xdata), Y = mean(Ydata),
X_sd = sd(Xdata, na.rm = T), Y_sd = sd(Ydata))
# Plot data with error bars:
ggplot(subDF, aes(x = X, y = Y)) +
geom_errorbar(aes(x = X,
ymin = (Y-Y_sd),
ymax = (Y+Y_sd)),
width = 1, size = 0.5) +
geom_errorbarh(aes(x = X,
xmin = (X-X_sd),
xmax = (X+X_sd)),
height = 1, size = 0.5) +
geom_point(cex = 3)
Выглядит нормально при масштабировании 1:1 (500x500):
но ширина/высота полосы ошибок выглядят по-другому при построении с разрешением 600x200