目前,我正在使用ggplot2制作密度图。
ggplot(data=resultFile,aes(x=V19, colour=V1) ) +
geom_line(stat="density") +
xlab("score") +
ylab("density") +
ggtitle(paste(data_name,protocol,level,sep=" ")) +
theme(legend.title=element_blank(), legend.position=c(0.92,0.9)) +
scale_color_manual(values=c("blue","red"),
labels=c("A", "B"))
但是,如果我在R中使用plot(density()...)函数,我可以得到不同的图。
Y值从0开始。
如何让ggplot的情节像R中的情节(密度()......)一样?
答案 0 :(得分:1)
ggplot(data=resultFile,aes(x=V19, colour=V1) ) +
ylim(0,range) #you can use this .
geom_line(stat="density") +
xlab("score") +
ylab("density") +
ggtitle(paste(data_name,protocol,level,sep=" ")) +
theme(legend.title=element_blank(), legend.position=c(0.92,0.9)) +
scale_color_manual(values=c("blue","red"),
labels=c("A", "B"))
答案 1 :(得分:0)
ggplot
显然在经验分布的最小值和最大值处切断了x轴。您可以通过将xlim
添加到绘图来扩展x轴,但请确保绘图不超过分布的理论极限(在下面的示例中,理论极限为[0,1],因此没有太多理由在范围之外展示。)
set.seed(1)
temp <- data.frame(x =runif(100)^3)
library(ggplot2)
ggplot(temp, aes(x = x)) + geom_line(stat = "density" + xlim(-.2, 1.2)
plot(density(temp$x))