如何使用ggplot2绘制非标准化数据?

Joh*_*ass 3 plot r ggplot2

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

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

我不是母语为英语的人,我很抱歉模棱两可.实际上,虹膜数据从0到8各不相同.我想绘制的数据准确反映实际值,而不是标准化值(将原始数据转换为(0,1)间隔).

Tyl*_*ker 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()
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

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


A5C*_*2T1 6

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

library(GGally)
ggparcoord(iris, columns = 1:4, groupColumn = 5, scale = "globalminmax")
Run Code Online (Sandbox Code Playgroud)

这导致:

在此输入图像描述