ChatGPT解决这个技术问题 Extra ChatGPT

R中的旋转轴标签

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


d
doncherry

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

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

https://i.stack.imgur.com/szTlv.png

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


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

使用 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 轴标签垂直于轴?
可以为每个轴单独设置样式,例如 plot(1, xaxt="n", yaxt="n"); axis(1, las=2); axis(2, las=1)
在进行任何更改之前始终备份 par:old.par <- par(no.readonly=T) :-)
f
fedorn

正如 Maciej Jończyk 所说,您可能还需要增加利润

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

M
MCH

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

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

应该是90度
A
Ashok Kumar Jayaraman

首先,为图表创建数据

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

输出:

https://i.stack.imgur.com/GlYt1.png