当标记轴打勾时,我想在括号中添加来自数据框的其他信息。例如,使用下面的代码段,我想自动将Area
上的信息包括在标签X
旁边的括号中。换句话说,标签可能会说“芝加哥(45)”,而不仅仅是“芝加哥”。我知道我可以通过在scale_x_discrete
中设置标签来手动完成此操作。但是,我可以自动执行此操作吗?我的数据集包含大量条目,因此我想避免手动执行此操作。
dataset <- data.frame(Area = sample(c(NA, 1:100), 3, rep = TRUE),
Y = rnorm(3), X = c("Chicago","New York", "Orlando"))
ggplot(dataset, aes(X, Y)) + geom_point()
答案 0 :(得分:1)
您可以使用所需的刻度标签建立新列:
library(dyplr)
library(stringr)
library(ggplot2)
dataset = dataset %>% mutate(label = str_c(X, " (", Area, ")"))
然后在美学中使用列标签
ggplot(dataset, aes(label, Y)) + geom_point()