0

我在函数中传递了分类变量,并且我想要多行中的 x-lables,因此我使用了我在 Internet 上获得的一个名为 addline_format in scale_x_discrete 的函数,请参阅下面的函数。当我也有空白值作为我知道我可以用 NA 或任何东西替换它但我想表示为空白的类别时,就会出现问题。ggplot 首先绘制空白值,这个 scale_x_discrete 最后给出空白值。

我创建的功能。

plthiststr <- function(df,d,e,y,b='') {
  #df is dataframe/datatable, 
  #d is the name of the coulmn for the labels in x-axis with '',
  #d SHOULDN'T contain Blank i.e '' type values Values, if it does this plot will not be correct.
  #b is the label of y-axis with '', 
  #e is the title of the plot and y is df$d where d is without ''  
  #y is df$d where d is without ''  
  addline_format <- function(x){
    gsub('\\s','\n',x)
  }
  require(ggplot2)
  library(ggplot2)
  g <- ggplot(df,aes_string(d))
  plt <- g+geom_bar()+ylab(b)+ggtitle(e)+xlab('')+scale_x_discrete(labels= addline_format(c(unique(y))))
  plt+theme(axis.text.x = element_text(size=10,colour="Blue",hjust=0.5,vjust=1),axis.ticks.y=element_blank(),panel.background=element_rect(fill="White",colour="Black"),panel.grid=element_blank())
}

有没有办法让订单始终匹配。

当我有“日期”类型变量时会发生什么。我相信 addline_format 仅适用于 chr 类型变量。

4

0 回答 0