为了账号安全,请及时绑定邮箱和手机立即绑定

请问r语言中grey.colors函数怎么用?

/ 猿问

请问r语言中grey.colors函数怎么用?

慕后森 2019-07-02 15:07:48

r语言中grey.colors函数怎么用


查看完整描述

5 回答

?
皈依舞

heatmap函数可以用来画heatmap图,例:
require(graphics); require(grDevices)
x <- as.matrix(mtcars)
rc <- rainbow(nrow(x), start = 0, end = .3)
cc <- rainbow(ncol(x), start = 0, end = .3)
hv <- heatmap(x, col = cm.colors(256), scale = "column",
RowSideColors = rc, ColSideColors = cc, margins = c(5,10),
xlab = "specification variables", ylab = "Car Models",
main = "heatmap(<Mtcars data>, ..., scale = \"column\")")
utils::str(hv) # the two re-ordering index vectors

查看完整回答
反对 回复 2019-07-13
?
慕村9548890

一、R预设调色板
这一系列函数有5个,即:
rainbow
heat.colors
terrain.colors
topo.colors
cm.colors
在R环境里面输入问号(?)和上面任一函数名就可以获得这5个函数的用法说明。这些函数最少需要一个参数,n,表示要得到颜色的数量。n在系统允许范围内没有限制。下面用彩虹色调色板函数rainbow产生的颜色绘一个色盘:

> setwd("D:/"); n=1000
> png("rainbow.disc.png", bg = "transparent")
> par(mar = c(0,0,0,0))
> pie(rep(1,times=n),labels="",col=rainbow(n),border=rainbow(n))
> dev.off()运行后回在D盘根目录下得到一个rainbow.disc.png文件,图形如下:

五个调色板产生的颜色对比如下:

> par(mfrow=c(5,1)); par(mar=c(0.1,0.1,2,0.1));par(xaxs="i", yaxs="i")
> n <- 10000
> barplot(rep(1,times=n),col=rainbow(n),border=rainbow(n),axes=FALSE, main="Rainbow colors");box()
> barplot(rep(1,times=n),col=heat.colors(n),border=heat.colors(n),axes=FALSE, main="heat.colors");box()
> barplot(rep(1,times=n),col=terrain.colors(n),border=terrain.colors(n),axes=FALSE,main="terrain.colors"); box()
> barplot(rep(1,times=n),col=topo.colors(n),border=topo.colors(n),axes=FALSE, main="topo.colors");box()
> barplot(rep(1,times=n),col=cm.colors(n),border=cm.colors(n),axes=FALSE, main="cm.colors"); box()

当然你可能不需要这么多颜色,改变n值就可以了:

> n <- 10
> barplot(rep(1,times=n),col=rainbow(n),border=rainbow(n),axes=FALSE, main="Rainbow colors");box()
> barplot(rep(1,times=n),col=heat.colors(n),border=heat.colors(n),axes=FALSE, main="heat.colors");box()
> barplot(rep(1,times=n),col=terrain.colors(n),border=terrain.colors(n),axes=FALSE,main="terrain.c



查看完整回答
反对 回复 2019-07-13
?
红颜莎娜

x <- rnorm(10000,0,1)
hist(x, col="grey", prob=TRUE)
lines(density(x), col="red")

查看完整回答
反对 回复 2019-07-13
?
九州编程

首先可以利用fitdistr函数求得weibull分布的形状参数和尺寸参数,假设数据为x:

12library(MASS) #fitdistr需要利用MASS包fitdistr(x, densfun = "weibull",lower=0)

得到形状参数shape与尺度参数scale

然后利用ks.test进行检验:

1ks.test(jitter(x),"pweibull",shape,scale)

上边的jitter用来做小扰动,因为如果x中有重复数据的话ks.test会报错,如果x中没有重复数据则不需要jitter。shape是得到的形状参数,scale是得到的尺度参数。

ks.test得到两个结果,一个是D,越小越好,一个是p-value,这个值要大于0.05


查看完整回答
反对 回复 2019-07-13
?
尚方宝剑之说

matlab里有自带的威布尔分布命令。
Examples
data = wblrnd(0.5,0.8,100,1);
[parmhat, parmci] = wblfit(data)

查查help文件

查看完整回答
反对 回复 2019-07-13

添加回答

回复

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信