我有五个数字列。我想用R中的不同颜色在一个图中绘制五列的频率分布。有人能帮我解释一下如何用一个例子来做到这一点。我是很新的R.频率分布R
Q
频率分布R
-5
A
回答
0
这里有一个基础R解决方案:
d = data.frame(a = rnorm(100), b = rnorm(100, 1), c = rnorm(100, 2), d = rnorm(100, 3), e = rnorm(100, 4))
plot(density(d$a), xlim = c(-4, 8))
lines(density(d$b), col = "red")
lines(density(d$c), col = "green")
lines(density(d$d), col = "blue")
lines(density(d$e), col = "yellow")
+0
添加一个方法来自动计算'xlim'和'ylim'的范围,我很乐意为这个答案投票。 :) – A5C1D2H2I1M1N2O1R2T1 2013-04-22 17:26:05
5
使用从@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)
这将产生:
如果你有很多列,你还可以创建你的p很多首先创建一个formula
:
myFormula <- as.formula(paste("~ ", paste(names(d), collapse = "+")))
densityplot(myFormula, data = d)
你也应该探索可供densityplot
的各种选项,如plot.points
(可设置为FALSE
如果你不想点的密度曲线的底部)和auto.key
添加图例。
另一个明显的选择是使用 “GGPLOT2”,但对于这一点,你需要首先将数据转换为 “长” 格式:
d2 <- stack(d)
library(ggplot2)
qplot(values, colour=factor(ind), data=d2, geom="density")
结果:
相关问题
- 1. R绘图频率分布
- 2. 频率分布图
- 3. MATLAB:频率分布
- 4. 数组的频率分布
- 5. 频率表R
- 6. 如何计算R中的频率分布?
- 7. 在R中应用循环来计算频率分布
- 8. 根据名义变量在R中的排名频率分布
- 9. 绘制频率分布/直方图频率表
- 10. R:滚动频率
- 11. 比率-的-制服分布中的R
- 12. MicroStrategy Dashboard中的简单频率分布?
- 13. 频率分布表和曲线
- 14. 在python中绘制频率分布
- 15. 频率分布 - Python - 从CSV导入
- 16. Python频率分布(FreqDist/NLTK)问题
- 17. 频率分布与加权平均
- 18. 了解时间序列对象R(频谱分析)的频率
- 19. R:从频率数据帧
- 20. R时间序列频率
- 21. 划分频率列
- 22. 频率和累积频率曲线在R
- 23. R:分布
- 24. R 1000+ .CSV文件合并和频率分析
- 25. Java频率分析性能
- 26. 按频率分组数据
- 27. Python中的频率分析
- 28. 频率分析帮助
- 29. python cv2视频分辨率
- 30. 频率字符串中的R
请在提问前做一些调查:http://www.cookbook-r.com/Graphs/Plotting_distributions_(ggplot2) – Roland 2013-04-22 14:52:50
发布样本输入的可重现示例,期望ed输出和您尝试过的代码。 – Nishanth 2013-04-22 14:55:45
我有5个元素的简单长度分布5列第1 5 7 8 9 10,第2 6 47 484 848,第3 38 383 838等等。我只是希望在一个直方图中用不同的颜色绘制整个数据集的频率分布。 – user2252362 2013-04-23 13:49:38