在y轴上绘制百分比

时间:2012-07-26 17:20:45

标签: r plot

我正在使用此

绘制图表
plot(dates,returns)

我希望将returns表示为百分比而不是数字。 0.1将成为10%。此外,y轴上的数字在左侧倾斜90度。是否可以使它们水平显示?

3 个答案:

答案 0 :(得分:20)

以下是使用las=TRUE转换y轴上的标签和使用调整后标签的新y轴axis()的方法。

dates <-  1:10
returns <- runif(10)

plot(dates, returns, yaxt="n")
axis(2, at=pretty(returns), lab=pretty(returns) * 100, las=TRUE)

答案 1 :(得分:5)

如果您使用ggplot,则可以使用scales包。

library(scales)
plot + scale_y_continuous(labels = percent)

答案 2 :(得分:2)

dates <-  1:100
returns <- runif(100)
yticks_val <- pretty_breaks(n=5)(returns)
plot(dates, returns, yaxt="n")
axis(2, at=yticks_val, lab=percent(yticks_val))

亮点:

  1. 无需明确添加&#34;%&#34;
  2. 手动修复y刻度的数量以与更多绘图一致。我在这里选择了5.
  3. See

    将两个答案合在一起@rengis @vladiim