如何在 ggplot2 中显示 geom_text 为数百万
How to display geom_text as millions in ggplot2
通常要在 ggplot2 中显示不同比例的轴值,我们可以使用以下内容:
p + scale_y_continuous(labels = scales::unit_format(unit = "M", scale = 1e-6))
如何对 geom_text 标签进行同样的操作?使用逗号,我们将执行以下操作
p + geom_text(aes(y = y_val, x = x_val, label = scales::comma(value)))
是否有类似于逗号的函数表示百万(例如:100M)?
也许您可以在 geom_text
中以类似的方式使用 paste
来完成您的要求?
library(ggplot2)
library(dplyr)
example_data <- tibble(
foo = c(1000000, 2000000, 3000000, 4000000, 5500000),
bar = c(1000000, 2000000, 3000000, 4000000, 5500000)
)
ggplot(example_data, aes(x = foo, y = bar)) +
geom_point() +
geom_text(aes(label = paste(round(foo / 1e6, 1), "M")))
由 reprex package (v0.3.0)
于 2021-01-29 创建
通常要在 ggplot2 中显示不同比例的轴值,我们可以使用以下内容:
p + scale_y_continuous(labels = scales::unit_format(unit = "M", scale = 1e-6))
如何对 geom_text 标签进行同样的操作?使用逗号,我们将执行以下操作
p + geom_text(aes(y = y_val, x = x_val, label = scales::comma(value)))
是否有类似于逗号的函数表示百万(例如:100M)?
也许您可以在 geom_text
中以类似的方式使用 paste
来完成您的要求?
library(ggplot2)
library(dplyr)
example_data <- tibble(
foo = c(1000000, 2000000, 3000000, 4000000, 5500000),
bar = c(1000000, 2000000, 3000000, 4000000, 5500000)
)
ggplot(example_data, aes(x = foo, y = bar)) +
geom_point() +
geom_text(aes(label = paste(round(foo / 1e6, 1), "M")))
由 reprex package (v0.3.0)
于 2021-01-29 创建