r - 如何根据两个字符变量在 ggplot 中进行子集化?
问题描述
我正在尝试根据两个字符变量在 ggplot 中对我的数据进行子集化:模型和字母。我想对具有字母“a”的“m1”进行子集化。在原始数据中,我有多行具有“m1”和“a”,但下面只是一个可重复的小示例。有人可以指导我如何在 ggplot 的命令中对其进行子集化吗?
model value letter
m1 5 a
m2 11 b
m3 2 c
m1 4 d
m2 22 e
m3 6 f
structure(list(model = structure(c("m1", "m2", "m3", "m1", "m2",
"m3"), format.stata = "%9s"), value = structure(c(5, 11, 2, 4,
22, 6), format.stata = "%9.0g"), letter = structure(c("a", "b",
"c", "d", "e", "f"), format.stata = "%9s")), row.names = c(NA,
-6L), class = c("tbl_df", "tbl", "data.frame"))
解决方案
我们可以做一个分组filter
,这可以用作输入ggplot
library(dplyr)
library(ggplot2)
df1 %>%
group_by(model) %>%
filter('a' %in% letter) %>%
ggplot(aes(x = letter, y = value)) +
geom_col()
或者如果它只是 'm1' 和 'a',filter
立即执行
df1 %>%
filter(model == 'm1', letter == 'a') %>%
ggplot(aes(x = letter, y = value)) +
geom_col()
推荐阅读
- single-sign-on - 如何阻止 IE11 缓存安全上下文
- .net - 使用 Noda Time 从本地日期和时区查找最接近的有效全球日期
- java - 当我运行多个测试用例时,TestNG 并行执行总是失败,其中只有一个测试脚本通过
- node.js - Mongoose - 数组被保存为字符串
- php - XAMPP 上没有出现任何帖子
- javascript - Destructuring within object literal with alias
- javascript - Zoom towards are mouse is over
- python - Add a column according to other columns in a matrix. [python]
- r - 将前一个值的一部分与其下一个值累积相加
- selenium-chromedriver - Exception handling with Realbrowserlocusts