gpt4 book ai didi

r - 基于ggplot r中数字大小的刻度标签中小数的条件格式

转载 作者:行者123 更新时间:2023-12-04 01:44:59 28 4
gpt4 key购买 nike

在我的 ggplot x 轴刻度标签中,我想将 0 到 1 之间的数字格式化为一位小数(如 0.1、0.2、0.5 等),但如果数字为 1 或以上,我只想显示整数形式的数字 (1,2,3,4)。

我还想在末尾设置带有 X 的刻度标签的格式,以表示标签是乘数因子。 X 轴刻度标签的理想结果如下所示

0.1X 0.2X 0.5X 1X 2X 3X 4X

这是示例数据集的最小示例

set.seed(42)
data.frame(exp=rexp(100,5)*10) %>%
ggplot(aes(x=exp)) +
geom_density() +
scale_x_log10(breaks = c(0.1, 0.2, 0.3, 0.5, 1, 2, 4, 6))

enter image description here

我看到了this回答,但我不知道如何让它与我的 x 轴一起工作。

最佳答案

您需要 1 位有效数字,因此您可以使用 signif():

data.frame(exp=rexp(100,5)*10) %>%
ggplot(aes(x=exp)) +
geom_density() +
scale_x_log10(breaks = c(0.1, 0.2, 0.3, 0.5, 1, 2, 4, 6),
labels = function(b) paste0(signif(b, 1), "X"))

关于r - 基于ggplot r中数字大小的刻度标签中小数的条件格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55720226/

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