r - R ggplot自定义标签轴与其他变量打勾
问题描述
当标记轴刻度时,我想在括号中添加数据框中的其他信息。例如,使用下面的代码片段,我想自动将信息包含在Area
label 旁边的括号中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()
解决方案
您可以使用所需的刻度标签构建一个新列:
library(dyplr)
library(stringr)
library(ggplot2)
dataset = dataset %>% mutate(label = str_c(X, " (", Area, ")"))
然后在美学中使用列标签
ggplot(dataset, aes(label, Y)) + geom_point()
推荐阅读
- oracle - ORA-01652: 无法在表空间 TEMP 中将临时段扩展 128,但有 500GB 可用
- python-3.x - 如何从小部件调用的函数更新散景下载按钮的源
- postgresql - json_array_elements:整数的无效输入语法
- google-cloud-firestore - 如何知道请求的数量
- flowtype - 您如何在 Flow 中阅读此内容?
- android - android命令行构建出现错误:找不到com.android.tools.build:gradle
- node.js - 出现奇怪的错误 Error TypeError: app.use() requires a middleware function
- ruby-on-rails - FullCalendar 未知选项 'dateClick'
- android - 无法上传 targetSdkVersion 为 30 的签名 apk
- java - 在 Edittext 上获取空对象引用