Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将直方图与R中的密度图相结合_R_Histogram - Fatal编程技术网

将直方图与R中的密度图相结合

将直方图与R中的密度图相结合,r,histogram,R,Histogram,当我将直方图和密度线合并到一个图中时,我似乎有一个在直方图和密度线之间缩放的问题。单独绘制密度曲线与两者结合绘制密度曲线之间存在明显的视觉差异。两个图之间具有相同形状和比例的解决方案是什么(单独的密度和结合histo时的密度)?我使用以下代码: hist(dataList[[cl12]],xlim=range(minx,maxx),breaks=seq(minx,maxx,pasx),col="grey",main=paste(paramlab,"Group",groupnum,Cl,sep="

当我将直方图和密度线合并到一个图中时,我似乎有一个在直方图和密度线之间缩放的问题。单独绘制密度曲线与两者结合绘制密度曲线之间存在明显的视觉差异。两个图之间具有相同形状和比例的解决方案是什么(单独的密度和结合histo时的密度)?我使用以下代码:

hist(dataList[[cl12]],xlim=range(minx,maxx),breaks=seq(minx,maxx,pasx),col="grey",main=paste(paramlab,"Group",groupnum,Cl,sep=" "),xlab="",freq=FALSE) 
d<-density(dataList[[cl12]])
lines(d,col="red")
hist(dataList[[cl12]],xlim=range(minx,maxx),breaks=seq(minx,maxx,pasx),col=“grey”,main=paste(paramlab,“Group”,groupnum,Cl,sep=”),xlab=”,freq=FALSE)

d默认情况下,历史图显示bin频率。如果要显示箱概率,以便与密度图的比例匹配,可以使用hist的freq参数。下面是一个例子:

x = rnorm(1000)
plot(density(x))
hist(x, freq=F, add=T)

默认情况下,hist绘制bin频率。如果要显示箱概率,以便与密度图的比例匹配,可以使用hist的freq参数。下面是一个例子:

x = rnorm(1000)
plot(density(x))
hist(x, freq=F, add=T)

这是做同样事情的另一种方法

test <- rnorm(1000)
plot(density(test))
par(new=T)
hist(test, freq=F, xaxt="n", xlab="", ylab="", main="")

test这里是做同样事情的另一种方法

test <- rnorm(1000)
plot(density(test))
par(new=T)
hist(test, freq=F, xaxt="n", xlab="", ylab="", main="")

test我认为除了极少量的数据点之外,您没有其他问题。当我把你的代码改成可复制的版本时,它看起来很好。乙二醇

x <- c(4.399449e-02,  2.161474e-02, -1.515223e-05,  1.298059e+01,
      3.163949e-01, -1.785220e+00,  1.041053e+01,  6.327219e-01, -5.778590e-03)

hist(x,col="grey",freq=FALSE, breaks=10) 
d<-density(x)
lines(d,col="red")

x我认为除了极少量的数据点之外,您没有其他问题。当我把你的代码改成可复制的版本时,它看起来很好。乙二醇

x <- c(4.399449e-02,  2.161474e-02, -1.515223e-05,  1.298059e+01,
      3.163949e-01, -1.785220e+00,  1.041053e+01,  6.327219e-01, -5.778590e-03)

hist(x,col="grey",freq=FALSE, breaks=10) 
d<-density(x)
lines(d,col="red")

x看一看
ggplot2
:那里的柱状图可以很容易地与(适当缩放的)密度曲线相结合,在这个问题中搜索“geom_density”,如果去掉各种不必要的变量,如minx、maxx、paramlab、,groupnum等,并通过例如使用“x”而不是“dataList[[c12]]”使其成为一个可复制的示例。查看
ggplot2
:那里的直方图可以轻松地与(适当缩放的)密度曲线组合,搜索“geom_density”在本文中,如果您去掉了各种不必要的变量,如minx、maxx、paramlab、groupnum等,并通过使用“x”而不是“dataList[[c12]]”使其成为一个可复制的示例,那么这个问题将更容易回答。这是我已经做过的。看看我的代码。这并不能解决我的问题。这是我已经做过的。看看我的代码。这不能解决我的问题。谢谢你,彼得。然而,我意识到我应该更具体一些。事实上,我试图得到的是一个有两个图形的图,一个在另一个上面(par(mfrow=c(2,1)),两个不同长度样本的直方图和密度曲线之间的组合。重要提示:我希望两者具有相同的x轴,直方图(freq=false)具有相同的箱宽。我做不到。密度曲线似乎不现实(它们比栏杆高出很多!)。我该怎么解决呢?谢谢,这真的不像你的问题所问的那样。我建议你用一个可复制的模拟数据的例子重新开始一个新的问题。谢谢你,彼得。但是,我意识到我应该更具体一些。事实上,我试图得到的是一个有两个数字的图,一个比另一个高(par(mfrow=c(2,1)),在两个不同长度样本的直方图和密度曲线之间进行组合。重要提示:我希望两者具有相同的x轴,并且直方图(freq=false)具有相同的仓位宽度。我不能这样做。密度曲线似乎不现实(它们的上升高度远高于条形图!)。我如何解决它?谢谢,这确实不是你的问题所要问的。我建议你从一个新的问题开始,用模拟数据重现一个例子。