使用mixtools时曲线的绘图问题
使用以下R代码
require(mixtools)
x <- c(rnorm(10000,8,2),rnorm(10000,18,5))
xMix <- normalmixEM(x, lambda=NULL, mu=NULL, sigma=NULL)
plot(xMix, which = 2, nclass=25)
我得到了一个很好的直方图,叠加了模型估计的2条法线曲线。
问题在于默认颜色(即红色和绿色),我需要将出版物更改为黑色和灰色。
我认为这样做的一种方法是首先产生直方图
hist(xMix$x, freq=FALSE, nclass=25)
然后使用&#34;曲线&#34;添加线条。功能
.......但是我迷路了,无法解决它
我会感激任何指针或实际的解决方案
感谢
PS。请注意,使用ggplot可以解决此问题: Any suggestions for how I can plot mixEM type data using ggplot2 但出于各种原因,我需要继续使用基本图形
答案 0 :(得分:2)
您还可以使用mixtools绘图功能中的col2参数直接编辑颜色
例如
-include("mongoose_logger.hrl").
答案 1 :(得分:0)
更多地考虑问题,我设法改写问题并以更直接的方式提出问题
Using user-defined functions within "curve" function in R graphics
这为如何使用“曲线”函数绘制混合建模产生的正态分布提供了两个很好的解决方案。
因此,总体答案是使用“hist”函数绘制原始数据的直方图,然后使用“曲线”函数(包含sdnorm函数)绘制每个正态分布。这样可以完全控制颜色(可能还有任何其他图形参数)。不要忘记 - 这是我获得sdnorm函数代码的地方 - 以及其他有用的见解
Any suggestions for how I can plot mixEM type data using ggplot2
一如既往地感谢StackOverflow和提供此类有用建议的贡献者。