自定义轴标签

我有一个简单的geom_point图,其中xvariables是序数,取5个值(编码为1:5)。

在图中,我想用5个相应的文本标签replace它。 有没有可能在ggplot中做到这一点?

3 Solutions collect form web for “自定义轴标签”

你应该可以用scale_x_discrete来做到这scale_x_discrete

 library(ggplot2) df <- data.frame(x = 1:5, y = sample(1:10, 5, TRUE)) qplot(factor(x),y, data = df) + scale_x_discrete(breaks = 1:5, labels=c("foo","bar","baz","phi","fum")) + xlab(NULL) 

scale_x_discrete应该这样做:

 x <- sample(1:5, 20, T) y <- rnorm(20) + x df <- data.frame(x = ordered(x), y = y) ggplot(df,aes(x,y)) + geom_point() + scale_x_discrete(breaks = 1:5, labels = letters[1:5]) 

这里是一个可重复的例子,我认为封装你的Q(?):

 require(ggplot2) dat <- data.frame(X = sample(1:5, 100, replace = TRUE), Y = rnorm(100)) 

目前还不清楚你有什么数据,但如果你的意思是这样的话:

 (p1 <- ggplot(dat, aes(x = X, y = Y)) + geom_point()) 

那么我想你想要一个带状图,这可以通过一个因素在ggplot中实现

 dat2 <- within(dat, X <- factor(X, labels = letters[1:5])) (p2 <- ggplot(dat2, aes(x = X, y = Y)) + geom_point()) 

如果这不是你的意思,你可以编辑你的Q来提供一个例子吗?

  • 打开文件夹中的所有文件,并应用一个函数
  • 将dataframe从宽转换为长格式
  • 忽略ggplot2 boxplot中的exception值
  • 如何将variables(对象)名称转换为string
  • 如何打印(纸张)一个很好格式的dataframe
  • Rdataframe的实际限制
  • 用ggplot()改变线条的颜色
  • R CMD检查中没有可见的全局variables注释
  • 用R markdown,knitr,pandoc,beamer绘制尺寸和分辨率
  • 如何增加ggplot2中条形图中的条形图之间的空间?
  • 如何很好地注释ggplot2(手动)