Questions tagged «ggplot2»

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

7
我们如何制作xkcd样式图?
显然,人们已经弄清楚了如何在Mathematica和LaTeX中制作xkcd样式图。我们可以在R中做到吗?ggplot2-ers?一个geom_xkcd和/或theme_xkcd? 我猜在基本图形中,par(xkcd = TRUE)?我该怎么做? 作为ggplot2中的第一个选项(下面将更详细地介绍),将jitter参数添加到一行可以使手绘效果更好。所以- ggplot(mapping=aes(x=seq(1,10,.1), y=seq(1,10,.1))) + geom_line(position="jitter", color="red", size=2) + theme_bw() 这是一个很好的例子-但是轴和字体看起来比较复杂。字体显示为已解决(如下)。处理轴的唯一方法是将其消隐并手工拉入吗?有没有更优雅的解决方案?特别是在ggplot2中,是否可以将新主题系统中的element_line修改为采用类似抖动的参数?
696 r  ggplot2  plot 

8
ggplot2中的旋转和间隔轴标签
我有一个图,其中x轴是标签长的一个因素。虽然可能不是理想的可视化效果,但现在我想简单地将这些标签旋转为垂直。我已经用下面的代码弄清楚了这部分,但是如您所见,标签并不完全可见。 data(diamonds) diamonds$cut <- paste("Super Dee-Duper",as.character(diamonds$cut)) q <- qplot(cut,carat,data=diamonds,geom="boxplot") q + opts(axis.text.x=theme_text(angle=-90))
668 r  ggplot2  labels 

16
在R中的同一图中绘制两个图
我想在同一图中绘制y1和y2。 x <- seq(-2, 2, 0.05) y1 <- pnorm(x) y2 <- pnorm(x, 1, 1) plot(x, y1, type = "l", col = "red") plot(x, y2, type = "l", col = "green") 但是当我这样做时,它们并没有一起绘制在同一图中。 在Matlab中可以做到hold on,但是有人知道如何在R中做到这一点吗?
570 r  plot  ggplot2  r-faq 

2
如何在ggplot2 R图中设置轴的极限?
我绘制以下内容: library(ggplot2) carrots <- data.frame(length = rnorm(500000, 10000, 10000)) cukes <- data.frame(length = rnorm(50000, 10000, 20000)) carrots$veg <- 'carrot' cukes$veg <- 'cuke' vegLengths <- rbind(carrots, cukes) ggplot(vegLengths, aes(length, fill = veg)) + geom_density(alpha = 0.2) 现在说我只是想绘制之间的区域x=-5000来5000,而不是整个范围。 我怎样才能做到这一点?
358 r  plot  ggplot2 

13
ggplot2的并排图
我想使用ggplot2包并排放置两个图,即做等效于par(mfrow=c(1,2))。 例如,我希望以下两个图以相同的比例并排显示。 x <- rnorm(100) eps <- rnorm(100,0,.2) qplot(x,3*x+eps) qplot(x,2*x+eps) 我需要将它们放在相同的data.frame中吗? qplot(displ, hwy, data=mpg, facets = . ~ year) + geom_smooth()
338 r  visualization  ggplot2 

5
在同一张图中使用ggplot2将两个变量绘制为线
一个非常新奇的问题,但请说我有这样的数据: test_data <- data.frame( var0 = 100 + c(0, cumsum(runif(49, -20, 20))), var1 = 150 + c(0, cumsum(runif(49, -10, 10))), date = seq(as.Date("2002-01-01"), by="1 month", length.out=100) ) 如何使用x在x轴上绘制时间序列var0和var1同一张图?如果您制作和使用不同的颜色,则可获得加分,并可包含图例!dateggplot2var0var1 我敢肯定这很简单,但是我找不到任何示例。
305 r  ggplot2  graph  time-series  r-faq 

11
如何将绘图作为图像保存在磁盘上?
我使用R绘制了一个简单的线性回归。我想将该图像另存为PNG或JPEG,是否可以自动执行?(通过代码) 有两个不同的问题:首先,我已经在监视器上查看该图了,我想按原样保存它。其次,我还没有生成绘图,但是我想在执行绘图代码时将其直接保存到磁盘。
304 r  plot  ggplot2  lattice  r-faq 

13
ggplot2条形图中的订购条
我正在尝试制作一个条形图,其中最大的条形图最接近y轴,而最短的条形图最远。所以这有点像我的桌子 Name Position 1 James Goalkeeper 2 Frank Goalkeeper 3 Jean Defense 4 Steve Defense 5 John Defense 6 Tim Striker 所以我正在尝试建立一个条形图,以根据位置显示玩家数量 p <- ggplot(theTable, aes(x = Position)) + geom_bar(binwidth = 1) 但该图首先显示了守门员栏,然后是防守方,最后是前锋。我希望对图表进行排序,以使防守杆最接近y轴,守门员最接近,前锋最接近。谢谢
301 r  ggplot2  r-faq 

11
如何在ggplot中更改图例标题
我有下面的情节如下。它是使用以下命令创建的: library(ggplot2) df <- data.frame(cond = factor(rep(c("A", "B"), each = 200)), rating = c(rnorm(200), rnorm(200, mean=.8))) ggplot(df, aes(x=rating, fill=cond)) + geom_density(alpha = .3) + xlab("NEW RATING TITLE") + ylab("NEW DENSITY TITLE") 现在,我接下来要做的是将图例标题从cond修改为NEW LEGEND TITLE。 所以我要做的就是添加以下行,并在上面的代码末尾添加: +labs(colour="NEW LEGEND TITLE") 但这是行不通的。什么是正确的方法?
299 r  plot  ggplot2 

3
ggplot2中的中心图标题
嗨,这个简单的代码(以及我今天早上起的所有脚本)已经开始在ggplot2中给我一个偏离中心的标题 Ubuntu version: 16.04 R studio version: Version 0.99.896 R version: 3.3.2 GGPLOT2 version: 2.2.0 我今天早上刚安装了上面的产品,尝试修复此问题。 dat <- data.frame( time = factor(c("Lunch","Dinner"), levels=c("Lunch","Dinner")), total_bill = c(14.89, 17.23) ) # Add title, narrower bars, fill color, and change axis labels ggplot(data=dat, aes(x=time, y=total_bill, fill=time)) + geom_bar(colour="black", fill="#DD8888", width=.8, stat="identity") + guides(fill=FALSE) …
254 r  ggplot2 

4
删除图例ggplot 2.2
我正在尝试保留一层(平滑)的图例,并删除另一层(点)的图例。我曾尝试用guides(colour = FALSE)和关闭这些传说geom_point(aes(color = vs), show.legend = FALSE)。 编辑:由于此问题及其答案很普遍,因此似乎出现了一个可重现的示例: library(ggplot2) ggplot(data = mtcars, aes(x = mpg, y = disp, group = gear)) + geom_point(aes(color = vs)) + geom_point(aes(shape = factor(cyl))) + geom_line(aes(linetype = factor(gear))) + geom_smooth(aes(fill = factor(gear), color = gear)) + theme_bw()
249 r  ggplot2  legend 

15
ggplot,每侧有2个y轴,并且比例不同
我需要在一张图表中绘制显示计数的条形图和显示利率的折线图,我可以分别将它们都做,但是当我将它们放在一起时,第一层的比例(即geom_bar)与第二层的比例重叠层(即geom_line)。 我可以geom_line向右移动轴吗?
231 r  ggplot2  r-faq 

20
如何更改刻面标签?
我使用了以下ggplot命令: ggplot(survey, aes(x = age)) + stat_bin(aes(n = nrow(h3), y = ..count.. / n), binwidth = 10) + scale_y_continuous(formatter = "percent", breaks = c(0, 0.1, 0.2)) + facet_grid(hospital ~ .) + theme(panel.background = theme_blank()) 生产 我想将构面标签更改为较短的内容(例如Hosp 1,Hosp 2...),因为它们现在太长了,看起来局促(不能选择增加图形的高度,这会占用太多空间)该文档)。我查看了facet_grid帮助页面,但不知道如何处理。
230 r  ggplot2  symbols  facet  plotmath 

9
在图上添加回归线方程和R ^ 2
我想知道如何在上添加回归线方程和R ^ 2 ggplot。我的代码是: library(ggplot2) df <- data.frame(x = c(1:100)) df$y <- 2 + 3 * df$x + rnorm(100, sd = 40) p <- ggplot(data = df, aes(x = x, y = y)) + geom_smooth(method = "lm", se=FALSE, color="black", formula = y ~ x) + geom_point() p 任何帮助将不胜感激。

2
在ggplot中关闭一些图例
假设我有一个不止一个图例的ggplot。 mov <- subset(movies, length != "") (p0 <- ggplot(mov, aes(year, rating, colour = length, shape = mpaa)) + geom_point() ) 我可以像这样关闭所有图例的显示: (p1 <- p0 + theme(legend.position = "none")) 传递show_guide = FALSE给geom_point(根据此问题)将关闭形状图例。 (p2 <- ggplot(mov, aes(year, rating, colour = length, shape = mpaa)) + geom_point(show_guide = FALSE) ) 但是,如果我想关闭颜色图例怎么办?似乎没有一种方法可以告诉show_guide哪个图例对其行为应用。而且没有show_guide尺度或美学的论据。 (p3 …
220 r  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.