Questions tagged «ggplot2»

ggplot2是Hadley Wickham根据“图形语法”的原则编写的,为R积极维护的开源图形绘图包。它部分替换了R的基本图和点阵包,同时提供了一个干净,强大,正交且有趣的API。

9
为组合的ggplots添加通用图例
我有两个ggplots,它们与水平对齐grid.arrange。我浏览了很多论坛帖子,但是我尝试的所有内容似乎都是现在已更新并命名为其他名称的命令。 我的数据看起来像这样; # Data plot 1 axis1 axis2 group1 -0.212201 0.358867 group2 -0.279756 -0.126194 group3 0.186860 -0.203273 group4 0.417117 -0.002592 group1 -0.212201 0.358867 group2 -0.279756 -0.126194 group3 0.186860 -0.203273 group4 0.186860 -0.203273 # Data plot 2 axis1 axis2 group1 0.211826 -0.306214 group2 -0.072626 0.104988 group3 -0.072626 0.104988 group4 -0.072626 0.104988 …
138 r  ggplot2  legend  gridextra 

14
ggplot2中具有边缘直方图的散点图
是否有办法像下面的示例中那样用边际直方图创建散点图ggplot2?在Matlab中,它是scatterhist()函数,R也存在等效项。但是,我还没有在ggplot2上看到它。 我通过创建单个图形开始尝试,但是不知道如何正确排列它们。 require(ggplot2) x<-rnorm(300) y<-rt(300,df=2) xy<-data.frame(x,y) xhist <- qplot(x, geom="histogram") + scale_x_continuous(limits=c(min(x),max(x))) + opts(axis.text.x = theme_blank(), axis.title.x=theme_blank(), axis.ticks = theme_blank(), aspect.ratio = 5/16, axis.text.y = theme_blank(), axis.title.y=theme_blank(), background.colour="white") yhist <- qplot(y, geom="histogram") + coord_flip() + opts(background.fill = "white", background.color ="black") yhist <- yhist + scale_x_continuous(limits=c(min(x),max(x))) + opts(axis.text.x = theme_blank(), axis.title.x=theme_blank(), …

5
按频率/值订购离散x标度
我正在使用具有离散x比例的ggplot制作躲避的条形图,现在x轴按字母顺序排列,但是我需要重新排列它,以便按y轴的值进行排序(即,最高的条形图位于左侧)。 我尝试排序或排序,但导致对x轴进行排序,但没有分别对条进行排序。 我做错了什么?
137 r  ggplot2  r-faq 

6
将grid.arrange()图保存到文件
我正在尝试使用绘制多个图,使用来ggplot2排列它们grid.arrange()。由于我设法找到描述我所遇到的确切问题的人,因此引用了链接中的问题描述: 当我使用ggsave()after grid.arrange(),即 grid.arrange(sgcir1,sgcir2,sgcir3,ncol=2,nrow=2) ggsave("sgcirNIR.jpg") 我不保存网格图,而是最后一个单独的ggplot。有没有什么实际方法可以grid.arrange()使用 ggsave()或类似方式保存显示的图?除了使用较旧的方式 jpeg("sgcirNIR.jpg") grid.arrange(sgcir1,sgcir2,sgcir3,ncol=2,nrow=2) dev.off() 相同的链接提供以下解决方案: require(grid) require(gridExtra) p <- arrangeGrob(qplot(1,1), textGrob("test")) grid.draw(p) # interactive device ggsave("saving.pdf", p) # need to specify what to save explicitly 但是,我无法弄清楚如何使用下面的代码ggsave()来保存grid.arrange()调用的输出,该代码取自link: library(ggplot2) library(gridExtra) dsamp <- diamonds[sample(nrow(diamonds), 1000), ] p1 <- qplot(carat, price, data=dsamp, colour=clarity) p2 <- qplot(carat, price, data=dsamp, …
137 r  ggplot2  gridextra 

7
忽略ggplot2 boxplot中的异常值
我如何忽略ggplot2 boxplot中的离群值?我不只是希望它们消失(即outlier.size = 0),而是希望它们被忽略,以便y轴缩放以显示第一/第三百分位数。我的异常值导致“盒子”缩小到几乎只有一条线。有一些技巧可以解决这个问题吗? 编辑 这是一个例子: y = c(.01, .02, .03, .04, .05, .06, .07, .08, .09, .5, -.6) qplot(1, y, geom="boxplot")
132 r  ggplot2 

5
如何使用ggplot更改轴上数字的格式?
我正在使用R和ggplot绘制一些数据的散点图,一切都很好,除了y轴上的数字是用计算机样式指数格式输出的,例如4e + 05、5e + 05等。这显然是这是不可接受的,因此我希望将其显示为500,000、400,000,依此类推。获得适当的指数符号也是可以接受的。 该图的代码如下: p <- ggplot(valids, aes(x=Test, y=Values)) + geom_point(position="jitter") + facet_grid(. ~ Facet) + scale_y_continuous(name="Fluorescent intensity/arbitrary units") + scale_x_discrete(name="Test repeat") + stat_summary(fun.ymin=median, fun.ymax=median, fun.y=median, geom="crossbar") 任何帮助,不胜感激。
131 r  ggplot2 

4
增加图例字体大小ggplot2
有没有办法增加字体大小ggplot2?我想我需要legend.key.width = unit(2, "line")在theme函数中指定类似的内容,但这用于调整图例中的键,而不是字体大小。谢谢!
128 r  ggplot2 

5
如何更改ggplot中的线宽?
数据链接:使用 的数据 我的代码: ccfsisims <- read.csv(file = "F:/Purdue University/RA_Position/PhD_ResearchandDissert/PhD_Draft/GTAP-CGE/GTAP_NewAggDatabase/NewFiles/GTAP_ConsIndex.csv", header=TRUE, sep=",", na.string="NA", dec=".", strip.white=TRUE) ccfsirsts <- as.data.frame(ccfsisims) ccfsirsts[6:24] <- sapply(ccfsirsts[6:24],as.numeric) ccfsirsts <- droplevels(ccfsirsts) ccfsirsts <- transform(ccfsirsts,sres=factor(sres,levels=unique(sres))) library(ggplot2) #------------------------------------------------------------------------------------------ #### Plot of food security index for Morocco and Turkey by sector #------------------------------------------------------------------------------------------ #_Code_Begin... datamortur <- melt(ccfsirsts[ccfsirsts$region %in% c("TUR","MAR"), ]) # Selecting …
127 r  ggplot2  line-plot 

3
R中的ggplot2覆盖直方图
我是R的新手,正在尝试将3个直方图绘制到同一张图上。一切工作正常,但是我的问题是您看不到2个直方图重叠的地方-它们看起来很截断。 当我进行密度图绘制时,它看起来很完美:每条曲线都被黑色边框包围,在曲线重叠的地方颜色看起来不同。 有人可以告诉我第一张图片中的直方图是否可以实现类似的效果吗?这是我正在使用的代码: lowf0 <-read.csv (....) mediumf0 <-read.csv (....) highf0 <-read.csv(....) lowf0$utt<-'low f0' mediumf0$utt<-'medium f0' highf0$utt<-'high f0' histogram<-rbind(lowf0,mediumf0,highf0) ggplot(histogram, aes(f0, fill = utt)) + geom_histogram(alpha = 0.2)
124 r  ggplot2 

6
使用美学和geom_text时,从图例中删除“ a”
如何从此代码生成的图例中删除字母“ a”?如果删除geom_text,则图例中不会显示“ a”字母。不过,我想保留geom_text。 ggplot(data = iris, aes(x = Sepal.Length, y=Sepal.Width, shape = Species, colour = Species)) + geom_point() + geom_text(aes(label = Species))
124 r  ggplot2  aesthetics 

3
如何使用ggplot2在R中制作具有透明背景的图形?
我需要将R的ggplot2图形输出到具有透明背景的PNG文件。基本的R图形一切正常,但是ggplot2没有透明度: d <- rnorm(100) #generating random data #this returns transparent png png('tr_tst1.png',width=300,height=300,units="px",bg = "transparent") boxplot(d) dev.off() df <- data.frame(y=d,x=1) p <- ggplot(df) + stat_boxplot(aes(x = x,y=y)) p <- p + opts( panel.background = theme_rect(fill = "transparent",colour = NA), # or theme_blank() panel.grid.minor = theme_blank(), panel.grid.major = theme_blank() ) #returns white …

2
在ggplot中编辑图例(文本)标签
我已经花了几个小时在文档和StackOverflow上查找,但是似乎没有解决方案可以解决我的问题。使用时ggplot,即使它在我的数据框中,我也无法在图例中获得正确的文本。我已经尝试过scale_colour_manual,例如scale_fill_manual使用不同的值。labels=c("T999", "T888")", "cols" 这是我的代码: T999 <- runif(10, 100, 200) T888 <- runif(10, 200, 300) TY <- runif(10, 20, 30) df <- data.frame(T999, T888, TY) ggplot(data = df, aes(x=T999, y=TY, pointtype="T999")) + geom_point(size = 15, colour = "darkblue") + geom_point(data = df, aes(x=T888, y=TY), colour = 'red', size = 10 ) …
120 r  text  ggplot2  label 


5
在ggplot上添加回归线
我正在努力在ggplot上添加回归线。我首先尝试使用abline,但是我没有设法使其正常工作。然后我尝试了这个... data = data.frame(x.plot=rep(seq(1,5),10),y.plot=rnorm(50)) ggplot(data,aes(x.plot,y.plot))+stat_summary(fun.data=mean_cl_normal) + geom_smooth(method='lm',formula=data$y.plot~data$x.plot) 但这也不起作用。

1
在ggplot2中添加x和y轴标签
如何更改此图上的x和y标签? library(Sleuth2) library(ggplot2) discharge<-ex1221new$Discharge area<-ex1221new$Area nitrogen<-ex1221new$NO3 p <- ggplot(ex1221new, aes(discharge, area), main="Point") p + geom_point(aes(size= nitrogen)) + scale_area() + opts(title = expression("Weighted Scatterplot of Watershed Area vs. Discharge and Nitrogen Levels (PPM)"), subtitle="n=41")
119 r  label  ggplot2 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.