【问题标题】:Basic Plotting Question/ How do I format my axis?基本绘图问题/如何格式化我的轴?
【发布时间】:2019-06-18 10:43:48
【问题描述】:

我已经为我正在进行的一个学生项目制作了自己的数据集,并且我正在尝试绘制一个图表来显示不同地区的就业结果和就业人数。一般来说,我是 Rstudio/data 的新手,而且是技术恐惧症!我正在努力让我的 Y 轴将数字显示为正常数字,而不是指数符号(如果这就是所谓的 6e+04 等?)

除此之外,X 轴只是选择要显示的某些区域,如果我展开它会更多。如何解决此问题以显示所有区域?

非常感谢您的帮助!

我尝试在情节中使用ylim=c(ymin=0, ymax=100000)。 (信息,使用的最大值略低于 100000)。但这并没有改变剧情。

employment.region$Region<- factor(employment.region$Employed, labels=c("North East","North West","Yorkshire","East Midlands","West Midlands","East of England","London","South East","South West","Wales","Scotland"))

plot(employment.region$Region,employment.region$Employed, ylim=c(ymin=0, ymax=100000), frame= FALSE)

AND 

plot(employment.region$Employed~employment.region$Region, ylim=c(ymin=0, ymax=100000))

【问题讨论】:

  • 嗨!谢谢,以后会看看这个并使用正确的格式!

标签: r plot rstudio


【解决方案1】:

在没有y 轴的情况下绘图,然后手动设置刻度线和轴标签。这就是定义yticksyaxis_labs 的原因。 然后绘制,使用las = 2 使轴的注释垂直于轴。

yticks <- seq(0, 100000, by = 2e4)
yaxis_labs <- formatC(yticks, digits = 6)

old_par <- par(mar = c(7, 4, 4, 2) + 0.1)

plot(employment.region$Region, employment.region$Employed, 
     ylim=c(ymin=0, ymax=100000), frame= FALSE, las = 2, yaxt = "n")
axis(2, at = yticks, labels = yaxis_labs, las = 2)

par(old_par)

【讨论】:

  • 这可能会用新的par 覆盖旧的par,不过
  • @jay.sf 为什么?我保存old_par,绘制并重置为原始值。函数par 返回调用之前有效的值。
  • @jay.sf 在通话中par(mar = c(7, 4, 4, 2) + 0.1)
  • 啊,太好了,所以par 实际上也被分配和执行了,到目前为止还没有意识到这个功能!谢谢
  • 谢谢瑞!只是想完全理解,以便我将来可以复制。为什么使用 old_par 和 new par?
猜你喜欢
  • 2021-04-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-05-21
  • 1970-01-01
  • 2019-10-15
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多