gpt4 book ai didi

r - ggplot2 geom_count 将图例中断设置为整数

转载 作者:行者123 更新时间:2023-12-04 10:14:16 25 4
gpt4 key购买 nike

我想使用 ggplot2 中的 geom_count 图,但是值的范围太小,图例中断成为出现次数的浮点,例如1 1.5 2 2.5 3
这是一个测试用例:

test = mtcars[1:6,]

ggplot(test, aes(cyl, carb)) +
geom_count(aes(color = ..n.., size = ..n..)) +
guides(color = 'legend')

我怎样才能让中断只发生在整数上?

最佳答案

您可以设置 breaks为连续colorsize秤。

您可以为中断提供值向量,但根据文档 breaks也可以给出参数:

a function that takes the limits as input and returns breaks as output



因此,对于像您的示例这样的简单案例,您可以使用 as.integerround作为函数。
ggplot(test, aes(cyl, carb)) +
geom_count(aes(color = ..n.., size = ..n..)) +
guides(color = 'legend') +
scale_color_continuous(breaks = round) +
scale_size_continuous(breaks = round)

对于比示例更大范围的整数,您可以手动输入中断,例如, breaks = 1:3 , 或者编写一个函数,该函数接受尺度的限制并返回一个整数序列。然后您可以将此函数用于 breaks .

这可能看起来像:
set_breaks = function(limits) {
seq(limits[1], limits[2], by = 1)
}

ggplot(test, aes(cyl, carb)) +
geom_count(aes(color = ..n.., size = ..n..)) +
guides(color = 'legend') +
scale_color_continuous(breaks = set_breaks) +
scale_size_continuous(breaks = set_breaks)

关于r - ggplot2 geom_count 将图例中断设置为整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45921746/

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