是否可以在基本图形中将轴标签分成2行?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了是否可以在基本图形中将轴标签分成2行?相关的知识,希望对你有一定的参考价值。

我试图让x轴标签分成两行。我还希望标签旋转45度。我怎样才能做到这一点?

到目前为止我所拥有的:

N <- 10
dnow <- data.frame(x=1:N, y=runif(N), labels=paste("This is observation ",1:N))
with(dnow, plot(x,y, xaxt="n", xlab=""))
atn <- seq(1,N,3)
axis(1, at=atn, labels=labels[atn])
答案

这是ggplot2包的一种可能性。

N <- 10
labs <- factor(1:N,labels=paste("This is 
 observation",1:N))
dnow <- data.frame(x=1:N, y=runif(N), labels=labs)
qplot(labels,y,data=dnow) + 
      opts(axis.text.x=theme_text(angle=-45,hjust=0))

alt text

我也很期待看到基础包的例子!

另一答案

这是我使用基本图形制作的(在我的ggplot2天之前):

## data
N <- 10
dnow <- data.frame(x=1:N, y=runif(N), labels=paste("This is 
observation ",1:N))
## make margins wide
par(mfrow=c(1,1), mar=c(10,10,6,4))
## plot without axix labels or ticks
with(dnow, plot(x,y, xaxt="n", xlab=""))
## the positions we ant to plot
atn <- seq(1,N,3)
## the label for these positions
lab <- dnow$labels[atn]
## plot the axis, but do not plot labels
axis(1, at=atn, labels=FALSE)
## plot labels
text(atn, ## x position
     par("usr")[3]-.05, ## position of the low axis
     srt=45, ## angle
     labels=lab, ##labels
     xpd=TRUE, ## allows plotting outside the region 
     pos=2)
## par("usr")[3]

以上是关于是否可以在基本图形中将轴标签分成2行?的主要内容,如果未能解决你的问题,请参考以下文章

在 MPAndroidChart 中,如何将 X 轴标签分成两条线?对使用任何修改后的库不感兴趣

多行中的 D3 折线图轴文本标签

在 R 中使用 ggplot 和拼凑更改轴标签和比例

是否可以在Matlab中将图例输入行分为两部分

MATLAB图中轴标签和轴之间的距离

如何使用 Matplotlib 调整图形的 x 轴“日期”标签?