我正在与ggplot2苦苦挣扎,并希望通过示例学习更多.
我有很多数据看起来像这样生成的东西:
data.frame(version=c('v1', 'v1', 'v1', 'v1', 'v2', 'v2', 'v2', 'v2'),
platform=c('linux', 'linux', 'mac', 'mac',
'linux', 'linux', 'mac', 'mac'),
type=c('a', 'b', 'a', 'b', 'a', 'b', 'a', 'b'),
count=floor(runif(8, 0, 10000)))
Run Code Online (Sandbox Code Playgroud)
我经常barplot给我画一个给定操作系统的堆积条形图(通过切片cast,但我还没有得到我想要的ggplot2.
我可以通过做这样的事情来设法绘制单个平台(假设上面的内容保存为sample):
qplot(version, a, data=cast(sample[sample$platform=='linux',],
version ~ type, value="count"),
geom='bar')
Run Code Online (Sandbox Code Playgroud)
理想情况下,我希望按类型堆叠(a在此示例中明确指出- 只有两种类型),然后每个平台有一个并排显示在按版本分组的同一图表上.
也就是说,对于每个版本,我都想要三个条形图(每个平台一个条形图),每个条形图有两个堆栈(按类型).
这是一个选项:
dat <- data.frame(version=c('v1', 'v1', 'v1', 'v1', 'v2', 'v2', 'v2', 'v2'),
platform=c('linux', 'linux', 'mac', 'mac',
'linux', 'linux', 'mac', 'mac'),
type=c('a', 'b', 'a', 'b', 'a', 'b', 'a', 'b'),
count=floor(runif(8, 0, 10000)))
ggplot(data = dat, aes(x = platform, y = count)) +
facet_wrap(~version) +
geom_bar(aes(fill = type))
Run Code Online (Sandbox Code Playgroud)
产生这样的东西:

你的示例数据只有两个平台,所以也许这只是一个错字,因为你引用了三个.
| 归档时间: |
|
| 查看次数: |
2994 次 |
| 最近记录: |