3

我用 绘制虹膜数据ggplot2。似乎ggplot2会自动将数据标准化为(0.1)区间。如何在没有任何标准化操作的情况下绘制数据?

library(ggplot2)
p <- ggpcp(iris, vars = names(iris[1:4]))
p + geom_line(aes(color = Species)) + ylim(0,8)

我不是以英语为母语的人,很抱歉造成歧义。实际上,虹膜数据从0到8不等。我想绘制的数据完全反映了真实值,而不是标准化值(将原始数据转换为(0,1)区间)。

4

2 回答 2

6

也许:

library(ggplot2)
p <- ggpcp(iris, vars = names(iris[1:4]))
iris2 <- data.frame(id=1:nrow(iris), iris)
dat <- reshape2::melt(iris2,id.var = c("id", "Species"))
ggplot(aes(y=value, x=variable, group=id, color=Species), data=dat) + geom_path()

在此处输入图像描述

虽然可能有更好的方法。从来没有这样做过,所以尝试很有趣。

于 2012-10-09T06:32:09.513 回答
6

最直接的方法可能是使用GGally 包。这允许您执行以下操作:

library(GGally)
ggparcoord(iris, columns = 1:4, groupColumn = 5, scale = "globalminmax")

这导致:

在此处输入图像描述

于 2012-10-09T07:28:28.513 回答