使用R包混合工具的绘图功能时更改默认颜色



使用混合工具时,我在绘制曲线时遇到问题

使用以下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) 

然后使用"curve"函数添加线条。

但我迷路了,无法解决

我将感谢任何指针或实际的解决方案

感谢

PS。请注意,使用ggplot可以解决此问题:关于如何使用ggplot2绘制mixEM类型数据的任何建议但由于各种原因,我需要继续使用基本图形

您也可以使用mixtools绘图函数中的col2参数直接编辑颜色

例如

plot(xMix, which = 2, nclass=25, col2=c("dimgrey","black"))

考虑了一下这个问题,我设法重新表述了这个问题,并以一种更直接的方式提出了这个问题

在";曲线";R图形中的功能

这提供了如何使用"曲线"函数绘制混合建模产生的正态分布的两个很好的解决方案。

因此,总体答案是使用"hist"函数绘制原始数据的直方图,然后使用"curve"函数(包含sdnorm函数)绘制每个正态分布。这提供了对颜色(以及可能的任何其他图形参数)的完全控制。

别忘了——这就是我获得sdnorm函数代码的地方——以及其他有用的见解

关于如何使用ggplot2 绘制mixEM类型数据的任何建议

一如既往地感谢StackOverflow和提供这些有用建议的贡献者。

相关内容

  • 没有找到相关文章

最新更新