gpt4 book ai didi

r - 使ggplot aes颜色映射以逻辑语句为条件

转载 作者:行者123 更新时间:2023-12-04 03:24:31 24 4
gpt4 key购买 nike

我想让 ggplot 中的颜色映射以逻辑测试的结果为条件。因此,例如,我可以提供一个输入,然后将颜色 aes 设置为 a、b 或 c。但是,我似乎无法让它工作,因为我能设法做到这一点的唯一方法是传递类似“a”的东西,当然它实际上不会映射到数据中的 a 列。任何帮助将不胜感激!

test.data <- tibble(nums = seq(1:6),
a = c("a","a","a", "b", "b", "b"),
b = c("a","a", "b", "b", "a","a"),
c = c("a", "b", "a", "b", "a", "b"))

ggplot(data = data) +
geom_point(aes(x = nums, y = nums, color = a))

color.choice <- "a"

ggplot(data = data) +
geom_point(aes(x = nums, y = nums, color = color.choice))

最佳答案

这可以通过例如.data 代名词,它允许您选择作为字符串传递的列:

library(ggplot2)

test.data <- data.frame(nums = seq(1:6),
a = c("a","a","a", "b", "b", "b"),
b = c("a","a", "b", "b", "a","a"),
c = c("a", "b", "a", "b", "a", "b"))

color.choice <- "a"

ggplot(data = test.data) +
geom_point(aes(x = nums, y = nums, color = .data[[color.choice]]))

关于r - 使ggplot aes颜色映射以逻辑语句为条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67864048/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com