这是几天前开始发生的,它scales::percent会在其标签中添加一个小数位,而且我似乎无法禁用该小数位以在y轴上显示整数值。
library(dplyr)
library(ggplot2)
mtcars %>%
count(cyl) %>%
mutate(prop = n / sum(n)) %>%
ggplot(aes(x = cyl, y = prop)) +
geom_point() +
scale_y_continuous(labels = scales::percent)
Run Code Online (Sandbox Code Playgroud) 我需要固定的小数位数(在这种情况下为两个),但我无法使其工作,我知道使用round和accuracy功能,但它似乎对我不起作用
代码:
library(ggplot2)
ggplot(mtcars, aes(factor(cyl))) +
geom_bar(color = "steelblue", fill = "#00AFBB", na.rm = T) +
scale_fill_discrete(drop=FALSE) +
scale_x_discrete(drop=FALSE) +
geom_text(aes(label=scales::percent(round(..count../sum(..count..),4))),
stat='count',vjust = -0.5, size = 4)
Run Code Online (Sandbox Code Playgroud) 我有一个情节,我需要从百分比数字中删除小数.数据已经四舍五入(两位小数),这是数据的一个例子:
> head(df$X)
[1] 0.05 0.28 0.08 0.19 0.33
Run Code Online (Sandbox Code Playgroud)
然后我绘制它,使用scale_x_continuous()将其转换为百分比格式,但正如您在下图中看到的,它们仍然有一个小数,我需要那些没有小数的数字.
这是图表的代码:
ggplot(df, aes(x=df$X, y=DF$Y)) +
geom_point(
colour="red",
size=5
) +
geom_text(label=df$Label, vjust=-2, family="sans", fontface="bold") +
labs(x="X", y="Y") + xlim(-1,1) + ylim(-1,1) + scale_x_continuous(labels=scales::percent) + scale_y_continuous(labels=scales::percent)
Run Code Online (Sandbox Code Playgroud)
我找到的最接近的答案是这个,但我不需要粘贴"%"符号,因为我已经拥有它.