我对R有点新,对ggplot很新,但我遇到了geom_boxplot()的问题:
我正在尝试绘制序列长度数据的箱线图,按样本类型分隔 . 序列长度都是整数,样本类型已存储为因子 . 命令:
> ggplot(database, aes(x = SampleType, Y = Length), geom_boxplot())
绘制一个空白图表,使用适当的X和Y轴,但根本没有绘图!很明显它知道了Length变量的限制(根据我的数据,轴截止是合适的)但绝对拒绝在图表上放置箱形图!
奇怪的是,命令:
> ggplot(database) + geom_boxplot(aes(x = SampleType, Y = Length))
作品!
我在其他数据集上测试了ggplot,这两个命令都运行正常,所以它显然只是我的一个问题!
我希望有人可以告诉我两种语法之间的区别,并且可能为什么一种方法在另一种方法不起作用时?
谢谢!
1 回答
考虑构建
ggplot2
图形的一种方法是考虑高架投影仪和分层(每个geom是一层)geoms作为透明表 .ggplot()
打开投影机但没有为任何图层设置默认值(透明表)ggplot(data = <some.data.frame>)
将打开投影机并将some.data.frame
设置为即将到来的图层的默认数据源 .ggplot(data = <some.data.frame>, mapping = aes())
将打开投影机并为每一层设置默认数据集和美学效果 .此时,没有创建或绘制图层(geoms) . 在
ggplot
调用中,...
允许传递其他参数,但是,它们会被忽略 . 这就是你的原因没有错误,也没有产生预期的结果 .
代码块
将打开项目,将默认数据集设置为
database
和默认美学 . 然后我们添加图层geom_boxplot
,好像在高射投影仪上放置了透明板,以显示箱图 .