gpt4 book ai didi

r - 格式化 ggplot2 轴标签,以便只有数字 > 9999 有逗号

转载 作者:行者123 更新时间:2023-12-02 00:38:58 24 4
gpt4 key购买 nike

我正在努力遵守发布风格指南,其中只有 5 位或更多数字的数字才带有逗号。搜索过这个但没有找到在使用“标签=逗号”时覆盖默认值的方法。下面是一个例子:

 require(dplyr)
require(ggplot2)
require(scales)

# create mock dataframe
temp <- mpg %>% mutate(newvar=(hwy*300))

ggplot(temp, aes(x=cyl, y=newvar)) + geom_point() +
scale_y_continuous(labels=comma) +
labs(title="When using 'labels=comma'...",
subtitle="How format axis labels such that commas only appear for numbers > 9999?")

使用此示例,希望最下方的 y 轴标签显示为“4000”、“6000”等。可以手动实现此操作,但这不值得,因为许多图表的刻度都包含此范围。有什么建议吗?

最佳答案

我们可以在 scale_x_continuous 中使用匿名函数:

library(scales)
library(ggplot2)

# generate dummy data
x <- 9998:10004
df <- data.frame(x, y = seq_along(x))

ggplot(df, aes(x = x, y = y))+
geom_point()+
scale_x_continuous(labels = function(l) ifelse(l <= 9999, l, comma(l)))

enter image description here

关于r - 格式化 ggplot2 轴标签,以便只有数字 > 9999 有逗号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47983771/

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