让我们生成一些数据:
x <- -10*cos(seq(0, pi, length.out = 100))+1
y <- 10*seq(0, pi, length.out = 100)
xerr <- rep(2, 100)
yerr <- rep(2, 100)
dd <- as.data.frame(cbind(x, y, xerr, yerr))
在这里,我有一些点的坐标及其错误,x
并且(为方便起见,我将它们设置为常数)。我想用点的大小来表示这些错误。这很容易做到:y
xerr
yerr
ggplot() +
geom_point(data = dd, aes(x, y, size = sqrt(xerr^2 + yerr^2)), colour = "gray") +
geom_path(data = dd, aes(x, y), colour = "red", size = .5) +
scale_size_identity() +
theme_bw()
但是,这些点的大小是在与绘图的比例没有任何关系的比例上定义的。有没有办法根据绘图的比例调整点的尺寸?在上面的例子中,每个点的半径应该等于 2.828 并且不小于现在的 1。