【问题标题】:Rotating axis labels in RR中的旋转轴标签
【发布时间】:2009-12-01 20:35:33
【问题描述】:

如何使(条形)图的 y 轴标签平行于 X 轴而不是平行于 Y 轴?

【问题讨论】:

标签: r label axis plot


【解决方案1】:

不确定这是否是您的意思,但请尝试设置las=1。这是一个例子:

require(grDevices)
tN <- table(Ni <- stats::rpois(100, lambda=5))
r <- barplot(tN, col=rainbow(20), las=1)

表示轴标签的样式。 (0=平行,1=全部水平,2=全部垂直轴,3=全部垂直)

【讨论】:

  • 它可以工作,但它会修剪标签。所以可能需要额外的选项。
  • 有没有一种简单的方法来旋转轴刻度标签?例如。如果我有较大的数字作为轴刻度标签,最好将它们旋转 45 度左右,以在可读性(水平)和空间效率(垂直)之间取得良好的平衡。
【解决方案2】:

使用par(las=1)

?par:

las
numeric in {0,1,2,3}; the style of axis labels.
0: always parallel to the axis [default],
1: always horizontal,
2: always perpendicular to the axis,
3: always vertical.

【讨论】:

  • 有没有办法设置它使得只有x轴标签垂直于轴?
  • Te 样式可以为每个轴单独设置,例如plot(1, xaxt="n", yaxt="n"); axis(1, las=2); axis(2, las=1)
  • 在进行任何更改之前始终备份 par:old.par
【解决方案3】:

正如 Maciej Jończyk 所述,您可能还需要增加边距

par(las=2)
par(mar=c(8,8,1,1)) # adjust as needed
plot(...)

【讨论】:

    【解决方案4】:

    您需要使用theme()函数如下将x轴标签旋转90度:

    ggplot(...)+...+ theme(axis.text.x = element_text(angle=90, hjust=1))
    

    【讨论】:

    • 应该是90度
    【解决方案5】:

    首先,为图表创建数据

    H <- c(1.964138757, 1.729143013,    1.713273714,    1.706771799,    1.67977205)
    M <- c("SP105", "SP30", "SP244", "SP31",    "SP147")
    

    其次,给图表文件命名

    png(file = "Bargraph.jpeg", width = 500, height = 300)
    

    三、绘制条形图

    barplot(H,names.arg=M,ylab="Degree ", col= rainbow(5), las=2, border = 0, cex.lab=1, cex.axis=1, font=1,col.axis="black")
    title(xlab="Service Providers", line=4, cex.lab=1)
    

    最后,保存文件

    dev.off()
    

    输出:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-02-11
      • 2017-07-01
      • 1970-01-01
      • 2012-05-04
      • 1970-01-01
      相关资源
      最近更新 更多