如何仅在 ggplot 轴刻度标签中显示小数?
how to only display decimals in ggplot axis tick labels?
如何让 ggplot 在轴刻度标签中只显示小数?
考虑如下所示的玩具数据框,其中所有变量的绝对值都小于 1:
set.seed(42)
x <- rnorm(n=500, sd = 0.1)
y <- 0.05 + 2*x + rnorm(n=500, sd = 0.05)
df <- data.frame(x,y)
summary(df)
library(ggplot2)
ggplot(data = df, aes(x = x, y = y)) +
geom_point()
是否可以在轴上使用 .xx
而不是 0.xx
?
您可以将函数传递给 scale_x_continuous()
的 labels
参数,在本例中为 lambda 样式函数:
ggplot(data = df, aes(x = x, y = y)) +
geom_point() +
scale_x_continuous(labels=~sub("^(-?)0.", "\1.", sprintf("%.1f", .x)))
如何让 ggplot 在轴刻度标签中只显示小数?
考虑如下所示的玩具数据框,其中所有变量的绝对值都小于 1:
set.seed(42)
x <- rnorm(n=500, sd = 0.1)
y <- 0.05 + 2*x + rnorm(n=500, sd = 0.05)
df <- data.frame(x,y)
summary(df)
library(ggplot2)
ggplot(data = df, aes(x = x, y = y)) +
geom_point()
是否可以在轴上使用 .xx
而不是 0.xx
?
您可以将函数传递给 scale_x_continuous()
的 labels
参数,在本例中为 lambda 样式函数:
ggplot(data = df, aes(x = x, y = y)) +
geom_point() +
scale_x_continuous(labels=~sub("^(-?)0.", "\1.", sprintf("%.1f", .x)))