帮助了解如何使用ggplot2制作条形图

时间:2011-01-01 17:25:12

标签: r ggplot2

我正在尝试使用ggplot2的bar_geom功能,但我无法理解如何使用它。我已经编写了一小段代码来展示我想要做的事情:

library(ggplot2)

# sample data
sampleData = data.frame( 
 v1=c('a','b','c','d','e', 'f','g', 'h', 'i','j'), 
 v2=c(1:10)     
)    
sampleData$Names = data.frame( Names = paste(sampleData$v1, sampleData$v2, sep="") )    
sampleData$Values = c(1:10)

# make plot
x = sampleData$Values
y = sampleData$Names 

qplot(      
    x, y, data = sampleData,
    geom="bar"  
)

我希望sampleData$Names位于图表的x轴上,标记每个条形,并sampleData$Values缩放条形高度。我希望将y轴指定为范围。我意识到我不明白ggplot2是如何起作用的,因为这个小例子不起作用,但我的另一个例子是生成一个图但我不能指定y范围,因为它认为变量是分类的。

2 个答案:

答案 0 :(得分:2)

qplot期望sampleData数据框中的列名称,以及将“名称”列设置为数据框的代码也很奇怪。以下更简单的版本有效:

sampleData = data.frame( 
 v1=c('a','b','c','d','e', 'f','g', 'h', 'i','j'), 
 v2=c(1:10)     
)

sampleData = transform( sampleData, Names = paste(v1, v2, sep=''))

qplot(   Names, v2, data = sampleData,    geom="bar"  )

alt text

答案 1 :(得分:0)

与pchalasani得到的结果相同的另一个快速情节是

qplot(v1, v2, geom = "bar", stat = "identity", data = sampleData)

特别注意参数stat