0
我希望使用通用函數爲ggplot2
中的每個數據點生成錯誤欄,該函數使用names
函數提取相同的列名。以下是演示代碼:ggplot2 - 使用自定義函數的錯誤條
plotfn <- function(data, xind, yind, yerr) {
yerrbar <- aes_string(ymin=names(data)[yind]-names(data)[yerr], ymin=names(data) [yind]+names(data)[yerr])
p <- ggplot(data, aes_string(x=names(data)[xind], y=names(data)[yind]) + geom_point() + geom_errorbar(yerrbar)
p
}
errdf <- data.frame('X'=rnorm(100, 2, 3), 'Y'=rnorm(100, 5, 6), 'eY'=rnorm(100))
plotfn(errdf, 1, 2, 3)
運行本提供了以下錯誤:
Error in names(data)[yind] - names(data)[yerr] :
non-numeric argument to binary operator
有什麼建議?謝謝。