Jon*_*son 6 r ggplot2 geom-text
我需要更改数字格式geom_text()以包含逗号。
我已经看到了相关的问题,但我无法让这些解决方案发挥作用。我尝试过“sep =”,count/sum(count) 类型,以及我刚刚转录的一些其他代码,但不知道什么意思。在这让我发疯之前,我需要一条生命线。
这是我的数据:
N_PASSENGERS Count Mean_Dist Mean_Time Mean_Fare
<int> <int> <dbl> <dbl> <dbl>
1 1 57216 2.16 10.2 145.
2 2 8421 1.92 9.21 213.
3 3 2022 2.01 9.67 234.
4 4 572 1.96 9.22 351.
5 5 306 2.40 9.84 505.
6 6 184 1.90 7.63 446.
Run Code Online (Sandbox Code Playgroud)
ggplot(Difference, aes(x = N_PASSENGERS, y = Mean_Dist, size = Count)) +
geom_point() +
scale_size(range = c(0, 20)) +
xlim(0, 6) +
ylim(1.75, 2.5) +
geom_text(aes(label = Count),
size = 3, vjust = 4.2,
WHAT THE HELL GOES HERE TO MAKE SOME COMMAS HAPPEN?) +
theme_minimal() +
theme(legend.position = "none") +
labs(x = "Number of Passengers",
y = "Mean Distance",
title = "Trips by Number of Rides and Distance") +
theme(plot.title = element_text(hjust = .5))
Run Code Online (Sandbox Code Playgroud)
我希望在我的数据点旁边看到 10,000 这样的数字。相反,我看到的是 10000 这样的数字。我明白这是一个幼稚的简单问题。我正在尝试自学 R,因此我感谢任何帮助。
Z.L*_*Lin 11
aes()您可以在中的美学映射内设置文本标签的格式geom_text。
代替:
... +
geom_text(aes(label = Count), size = 3, vjust = 4.2) +
...
Run Code Online (Sandbox Code Playgroud)
使用:
... +
geom_text(aes(label = scales::comma(Count)), size = 3, vjust = 4.2) +
...
Run Code Online (Sandbox Code Playgroud)
完整数据和代码:
Difference <- read.table(text = "
N_PASSENGERS Count Mean_Dist Mean_Time Mean_Fare
1 1 57216 2.16 10.2 145.
2 2 8421 1.92 9.21 213.
3 3 2022 2.01 9.67 234.
4 4 572 1.96 9.22 351.
5 5 306 2.40 9.84 505.
6 6 184 1.90 7.63 446.")
ggplot(Difference, aes(x = N_PASSENGERS, y = Mean_Dist, size = Count)) +
geom_point() +
scale_size(range = c(0, 20)) +
xlim(0, 6) +
ylim(1.75, 2.5) +
geom_text(aes(label = scales::comma(Count)),
size = 3, vjust = 4.2) +
theme_minimal() +
theme(legend.position = "none") +
labs(x = "Number of Passengers",
y = "Mean Distance",
title = "Trips by Number of Rides and Distance") +
theme(plot.title = element_text(hjust = .5))
Run Code Online (Sandbox Code Playgroud)
您可以使用该scales包,它允许一些格式选项,例如comma,dollar或percent。
df <- data.frame(a=c("a","b","c","d"), b=c(300,1000,2000,4000))
library(ggplot2)
library(scales)
ggplot(df, aes(a, b)) +
geom_point(size=4) +
scale_y_continuous(labels = comma)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8309 次 |
| 最近记录: |