R:缩放,图例和带有条形图的轴

时间:2014-05-06 14:10:11

标签: r plot

我的插图出现问题,缩放文字并命名单个轴

代码:

youtube_1 <- c(1)
youtube_2 <- c(2)
youtube <- rbind( youtube_1 , youtube_2)

facebook_1 <- c(6)
facebook_2 <- c(3)
facebook <- rbind( facebook_1 , facebook_2)

twitter_1 <- c(3)
twitter_2 <- c(1)

twitter <- rbind(twitter_1 , twitter_2)


groups <- rbind(youtube , space , facebook , space , twitter , space)


barplot(
  groups , 
  main="Rating" ,
  ylab="Number of votes over time (people under 50 vs, people over 50)" ,
  xlab="Year 1 , Year 2 , Year 3 " ,
  col=c("yellow" , "green" ) ,
  beside=TRUE ,
  ylim= range(0 , 10) ,
 legend("topright" , legend=c("Young" , "Old") , col=c("yellow" , "green")) ,
  )                

当我让R做它的事情时,它会给我:

  1. 图表隐藏在我的传奇背后:(
  2. 与图表相比,y轴的比例太大
  3. 单个条形图未标记
  4. 我也遇到了这个丑陋的错误:

    width / 2中的错误:二元运算符的非数字参数 另外:警告信息: 在mean.default(width)中:参数不是数字或逻辑:返回NA

  5. 我想:

    1. 远离图表“区域”的图例
    2. 缩放轴的文本
    3. 标记每个单独的栏
    4. 标记y轴上的单个点(例如5),理想情况下通过该点画一条线
    5. 我也是R的新手,所以请慢慢来,为假人取悦:)

1 个答案:

答案 0 :(得分:0)

我很难确切地看到你的问题是什么,因为“空间”不是一个明确定义的对象。

宽度错误/ 2:二元运算符的非数字参数另外:警告消息:在mean.default(width)中:参数不是数字或逻辑:返回NA ”是源于不正确地指定传奇。您需要在barplot()

中使用args.legend
args.legend = list(x = "topleft", col=c("yellow","green"), legend=c("Young","Old"))

或另一种解决方案是在事实之后指定图例:

barplot(
 groups , 
  main="Rating" ,
  ylab="Number of votes over time (people under 50 vs, people over 50)" ,
  xlab="Year 1 , Year 2 , Year 3 " ,
  col=c("yellow" , "green" ) ,
  beside=TRUE ,
  ylim= range(0 , 10) ,
)

legend("topright" , legend=c("Young" , "Old") , col=c("yellow" , "green")) 

您可以使用barchart()中的名称为每个条指定标签,并可以使用cex.names指定名称的大小:

barplot(
  groups , 
  main="Rating" ,
  ylab="Number of votes over time (people under 50 vs, people over 50)" ,
  names=row.names(groups),
  cex.names=0.75
  col=c("yellow" , "green" ) ,
  beside=TRUE ,
  ylim= range(0 , 10) ,
)