r - ggplot 不绘制箱线图

标签 r ggplot2 boxplot

我对 R 有点陌生,对 ggplot 也很陌生,但我遇到了 geom_boxplot() 的问题:

我正在尝试绘制序列长度数据的箱线图,按样本类型分隔。序列长度均为整数,样本类型已存储为因子。 命令:

> ggplot(database, aes(x = SampleType, Y = Length), geom_boxplot())

绘制一个空白图表,具有适当的 X 轴和 Y 轴,但根本没有绘图!很明显,它知道长度变量的限制(给定我的数据,轴截止是合适的),但绝对拒绝在图表上放置箱线图!

奇怪的是,命令:

> ggplot(database) + geom_boxplot(aes(x = SampleType, Y = Length))

有效!

我已经在其他数据集上测试了 ggplot,两个命令都工作正常,所以这显然只是我的问题!

我希望有人能告诉我这两种语法之间的区别,以及为什么一种可以工作而另一种却不能?

谢谢!

最佳答案

思考 ggplot2 构造的一种方法图形是将投影仪和分层(因为每个几何体都是一个层)几何体视为透明片。

ggplot()打开投影仪,但不为任何图层(透明胶片)设置默认值

ggplot(data = <some.data.frame>)将打开投影仪并设置 some.data.frame作为即将到来的图层的默认数据源。

ggplot(data = <some.data.frame>, mapping = aes())会打开 投影仪并设置每个图层的默认数据集和美观度。

此时,尚未创建或绘制任何图层(几何图形)。在 ggplot调用...允许传递其他参数,但是它们会被忽略。这就是为什么你的

ggplot(database, aes(x = SampleType, Y = Length), geom_boxplot())

没有错误,也没有产生预期的结果。

代码块

ggplot(database, aes(x = SampleType, y = Length)) +
geom_boxplot()

将打开项目,设置默认数据集为database和默认的美学。然后我们添加图层geom_boxplot ,就像将透明片放置在高射投影仪上一样,以显示箱线图。

关于r - ggplot 不绘制箱线图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43562932/

相关文章:

r - ggplot没有绘制正确的颜色

r - 使用 IBrokers 拉动期权链

r - 如何使用 R 映射美国所有州和每个州发生的犯罪数量?

python - Seaborn load_dataset

java - 具有多个类别的箱线图的 JFreeChart 缩放

legend - 这是 zingchart 中的错误吗(箱线图图例)

R:如何将默认参数传递给函数?

r - 如何在flexdashboard中组合行和列布局?

r - geom_area 绘图区域的间隙

r - 错误: could not find function "unit"