相关疑难解决方法(0)

如何在ggplot2中将百分比四舍五入到小数点后两位

我的代码生成此图:

在此处输入图片说明

代码:

ggplot(areas, aes(x = RETAILER, y = Difference), label=sprintf("%0.2f", round(areas$Difference, digits = 2))) +
geom_bar(stat = "identity", aes(fill = RETAILER), colour = "black") +
scale_y_continuous("Percentage", labels = percent_format()) +
geom_text(aes(label = paste(Difference * 100, "%"),
              vjust = ifelse(Difference >= 0, -1.5, 1.5))) +
theme_classic()
Run Code Online (Sandbox Code Playgroud)

我找到了允许将数据标签正确定位在每个条形上方或下方的代码,但我似乎无法将值四舍五入到小数点后两位。

我已经尝试过round(areas, 2)以及sprintf("%0.2f")其他事情,但我尝试的任何东西似乎都不起作用,而且我确信我错过了一些简单的东西。

我哪里错了?

更新:

在罗兰的“鼓励”下,我现在几乎解决了这个问题;现在的问题是我现在丢失了百分比符号:

在此处输入图片说明

我如何让他们回来?

更新代码:

ggplot(areas, aes(x = RETAILER, y = Difference)) +
  geom_bar(stat = "identity", aes(fill = RETAILER), colour = "black") +
  scale_y_continuous("Percentage", labels = …
Run Code Online (Sandbox Code Playgroud)

r rounding ggplot2

8
推荐指数
3
解决办法
1万
查看次数

删除百分比轴中的小数 - R

我有一个情节,我需要从百分比数字中删除小数.数据已经四舍五入(两位小数),这是数据的一个例子:

> 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)

我找到的最接近的答案是这个,但我不需要粘贴"%"符号,因为我已经拥有它.

plot r ggplot2

0
推荐指数
1
解决办法
132
查看次数

标签 统计

ggplot2 ×2

r ×2

plot ×1

rounding ×1