gpt4 book ai didi

r - 是什么导致了这个 ggplot2 方面的错误?

转载 作者:行者123 更新时间:2023-12-04 15:55:57 24 4
gpt4 key购买 nike

我正在整理一些 R 演示,以向同事展示它的一些功能。我特别想让他们对ggplot2感兴趣因此,我们使用 facet_grid 组合了一个简单的分面示例。与 iris数据集。

为了向他们展示不同的模式,我想向他们展示使用 .~Species 会产生什么, Species~.Species~Species (我承认这是一个糟糕的例子)。

这似乎在 ggplot 中引发了一些奇怪的行为。我想知道为什么会这样。我希望下面的图包含沿对角线的点,其中每个轴上的物种名称彼此匹配。相反,所有内容都列在 setosa 下在 x 轴上,然后在 y 轴上的实际物种下。

我意识到这个例子不会出现在任何现实的使用场景中,它只是让我觉得这是一个有趣的怪癖。为什么ggplot表现得像这样?

我也用 mtcars 试过这个数据集并获得相同的效果。

library("ggplot2")
data(iris)
ggplot(iris, aes(Petal.Width, Petal.Length, colour=Species)) +
geom_point() +
theme_bw() +
facet_grid(Species~Species)

ggplot faceted scatterplot showing bug

最佳答案

那是因为您没有 ggplot2 的任何信息来打印组合,例如setosa 和杂色。

在此代码中,我重用了 @Sam 注释,并对我们正在创建的新列种类进行了采样(更改顺序)。这创造了物种的组合。从生态上讲,像我一样这样做可能会产生误导,但可以肯定的是,它会在不同 facet_grid 的组合中打印物种。

library("ggplot2")
data(iris)
iris$Species1 <- sample(iris$Species)
ggplot(iris, aes(Petal.Width, Petal.Length, colour=Species)) +
geom_point() +
theme_bw() +
facet_grid(Species~Species1)

这就是它的样子。同样,我只是创建了不同的物种对来在刻面网格中打印对。
R_output

这将是一个不同年份的例子
iris$Year <- rep(2010:2014,dim(iris)[2])
ggplot(iris, aes(Petal.Width, Petal.Length, colour=Species)) +
geom_point() +
theme_bw() +
facet_grid(Year~Species)

enter image description here

关于r - 是什么导致了这个 ggplot2 方面的错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33763605/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com