R中的频率分布

-5 plot r frequency-distribution

我有五列数字.我想用R中的不同颜色绘制一个图形中五列的频率分布.有人可以通过一个例子来帮助我如何做到这一点.我是R.的新手

A5C*_*2T1 6

使用来自@eddi的示例数据,您还可以考虑"网格"包:

set.seed(1)
d <- data.frame(a = rnorm(100), b = rnorm(100, 1), c = rnorm(100, 2),
                d = rnorm(100, 3), e = rnorm(100, 4))

library(lattice)

densityplot(~ a + b + c + d + e, data = d)
Run Code Online (Sandbox Code Playgroud)

这将产生:

在此输入图像描述

如果您有许多列,您还可以通过首先创建一个formula:

myFormula <- as.formula(paste("~ ", paste(names(d), collapse = "+"))) 
densityplot(myFormula, data = d)
Run Code Online (Sandbox Code Playgroud)

您还应该探索可用的各种选项densityplot,例如plot.points(FALSE如果您不希望密度图底部的点可以设置)并auto.key添加图例.


另一个显而易见的选择是使用"ggplot2",但为此,您需要先将数据转换为"长"格式:

d2 <- stack(d)
library(ggplot2)
qplot(values, colour=factor(ind), data=d2, geom="density")
Run Code Online (Sandbox Code Playgroud)

结果:

在此输入图像描述