【问题标题】:modify the values in the y-axis in ggplot修改ggplot中y轴的值
【发布时间】:2015-07-12 11:06:25
【问题描述】:

我有一个 data.frame,我收集的数据是秒,我将它绘制在 y 轴上。但是,当我想绘制该数据时,我希望它在 y 轴上以毫秒为单位绘制。

如何修改 y 轴上出现的值,使其比实际出现的数据大 1000 倍,而绘制的点保持不变?

这是我目前使用的代码:

ggplot(DSRCdelay_cl, aes(x=numVehicles, y=value, colour=as.factor(clusteringDistance)  )  ) +
  geom_smooth(fill=NA, aes(group=clusteringDistance, size=0 ) ) +
  xlab(expression( "Vehicles (per" ~km^2~")" ) ) + 
  ylab("DSRC delay") + scale_y_continuous() + 
  expand_limits(x =c(0), y =c(0,0.1) )

与此问题密切相关的其他答案是: transforming axis labels with a multiplier ggplot2 和:ggplot2 axis transformation by constant factor

【问题讨论】:

    标签: r ggplot2


    【解决方案1】:

    轴文本和标签大小可以在函数 theme() 中使用 axis.text= 和 axis.title= 进行更改。要仅更改 y 轴标题大小,请指定 axis.title.y= 如下所示:

    g+主题(axis.text=element_text(size=12),
    axis.title.y=element_text(size=14,face="bold"))

    这里是格式化 ggplot 图表的好参考:

    http://www.cookbook-r.com/Graphs/index.html

    http://www.cookbook-r.com/Graphs/Axes_(ggplot2)/

    【讨论】:

    • 感谢您的回答,但我说的是出现在轴上的值,而不是出现在轴上的文本大小
    【解决方案2】:

    使用将y-axis的标签值倍增的函数:

    p + scale_y_continuous( labels=function(x)x*1000 )

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-03-27
      • 1970-01-01
      • 2020-04-05
      • 1970-01-01
      • 2022-08-03
      相关资源
      最近更新 更多