Tag: ggplot2

如何使用grid.arrange来安排一个variables列表?

library(ggplot2) df <- data.frame(x=1:10, y=rnorm(10)) p1 <- ggplot(df, aes(x,y)) + geom_point() plist <- list(p1,p1,p1,p1,p1) # In my real example,a plot function will fit a ggplot to a list of datasets #and return a list of ggplots like the example above. 我想在gridExtra使用grid.arrange()来安排图。 如果plist的地块数量是可变的,我将如何做到这一点? 这工作: grid.arrange(plist[[1]],plist[[2]],plist[[3]],plist[[4]],plist[[5]]) 但我需要一个更一般的解决scheme。 想法?

有条件地更改面板背景与facet_grid?

我正在使用ggplot2中的“提示”数据集。 如果我做 sp = ggplot(tips,aes(x=total_bill, y = tip/total_bill)) + geom_point(shape=1) + facet_grid(sex ~ day) 情节出来很好。 但是我现在想要在“星期五”下改变面板背景。 有没有办法做到这一点? 更好的是,我可以通过传递参数有条件地改变颜色吗? 例如,如果超过3点低于0.1,那么将面板背景(仅适用于该面板)更改为某种颜色,而其他所有其他颜色保持为默认浅灰色?

ggplot2带expression式的双行标签

我想用一个expression()语句在两行中写一个轴标签。 然而, plotmath和expression不允许这样做(例如,下标文本出现在最右侧)。 我发现这个讨论大约在2005年的一个类似的问题,但他们提供的工作并没有转化为我在ggplot2中的应用。 最近的一个问题涉及多行expression式语句的不同排列,但是这里所提供的解决方法并不适用于此。 例: p <- ggplot(mtcars,aes(x=wt,y=mpg))+ geom_point()+ xlab(expression(paste("A long string of text goes here just for the purpose \n of illustrating my point Weight "[reported]))) try(ggsave(plot=p,filename=<some file>,height=4,width=6)) 当我希望它坐在前一个单词的旁边时,会产生一个下标“已报告”被踢出右侧的图像。

ggplot传说 – 更改标签,顺序和标题

我正在努力修改我的情节中的传奇。 这是一个可重现的例子: dtt <- structure(list(model = structure(c(1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 3L, 3L, 3L, 3L, 3L, 3L), .Label = c("ma", "mb", "mc"), class = "factor"), year = c(2005L, 2006L, 2007L, 2008L, 2009L, 2010L, 2005L, 2006L, 2007L, 2008L, 2009L, 2010L, 2005L, 2006L, 2007L, 2008L, 2009L, 2010L), V = c(0.16, […]

如何在ggplot2的绘图区外画线?

我用ggplot2创build了这个图: 外线需要对应于Y刻度(即Text1的行的Y位置应该是100和85)。 唯一的办法,我可以做到这一点,通过在图的右侧绘制一个空白的图,与条形图相同的比例,然后使用注释function来绘制线条。 另一种方法是简单地用grid.lines “手动”绘制线条,但是grid.lines的坐标不会对应于绘图的Y比例。 是否有可能以某种方式使用不同的方法绘制这些线? 我认为这将不得不与grid.lines 。 我怎么能通过条形图的Y coordindates到grid.lines ? 以下是用于创build此图的最小代码: library (ggplot2) test= data.frame( group=c(rep(1,6), rep(2,6)), subgroup=c( 1,1,1,2,2,2,1,1,1,2,2,2), category=c( rep(1:3, 4)), count=c( 10,80,10,5,90,5, 10,80,10,5,90,5 ) ) qplot(subgroup, count, data=test, geom="bar", stat="identity", fill =category, facets = .~ group, width=0.9)+ opts(legend.position="none", plot.margin = unit(c(0,9,2,0), "lines")) 我怎样才能在酒吧的右边画线? 我最近问了一个关于在ggplot2的绘图区域之外绘制文本的问题,解决方法是使用gt$layout和grid.draw 。 在由ggplot2生成的图表下方显示文本 这里可以使用类似的方法吗? 我的理解是,annotation_custom仅适用于文本,不适用于其他graphics元素。 谢谢

使用ggplot2在一个canvas中的多个graphics

我正在试图合并两个ggplot2情节到基于这个表的一个: Type RatingA RatingB 1 One 3 36 2 Two 5 53 3 One 5 57 4 One 7 74 5 Three 4 38 6 Three 8 83 我想要制作两个散点图,分别是y轴上的评级平均值和x轴上的types。 这是我如何创build每个graphics: p1 <- ggplot(test, aes(x=reorder(Type, RatingA, mean), y=RatingA)) + stat_summary(fun.y="mean", geom="point") p2 <- ggplot(test, aes(x=reorder(Type, RatingB, mean), y=RatingB)) + stat_summary(fun.y="mean", geom="point") 由于p1和p2具有相同的x轴,所以我想让它们垂直排列。 我看着facet_align,但我找不到能做这项工作的东西。

使用ggplot2在地图上绘制条形图?

我想使用ggplot2为地图上的每个位置生成一个barplot,就像xm根据基础graphics和一些包所做的那样: Let R fly: Visualizing Export Data using R 这与在情节中embedded微型情节有关。 目前,我能做的最好的事情就是在抖动点图上匹配点的大小。 require(ggplot2) require(maps) #Get world map info world_map <- map_data("world") #Creat a base plot p <- ggplot() + coord_fixed() #Add map to base plot base_world <- p + geom_polygon(data=world_map, aes(x=long, y=lat, group=group)) #Create example data geo_data <- data.frame(long=c(20,20,100,100,20,20,100,100), lat=c(0,0,0,0,0,0,0,0), value=c(10,30,40,50,20,20,100,100), Facet=rep(c("Facet_1", "Facet_2"), 4), colour=rep(c("colour_1", "colour_2"), each=4)) […]

在R / ggplot2中将math符号和下标与常规字母混合使用

我想在ggplot2绘制一个如下所示的标签: Value is $\sigma$, R^{2} = 0.6其中Value is是普通字体, $\sigma$是希腊小写sigma字母, R^{2} = 0.6为带有上标2的R ,接着是等号( = ),接着是0.6 。 这怎么可以在ggplot factor和参数的东西,如xlab,ylab R的xlab,ylab ? 谢谢。

增加y轴上文本和标题之间的距离

Y轴标题看起来离轴文本太近了。 ggplot(mpg, aes(cty, hwy)) + geom_point() 我曾尝试更改theme()的许多参数的值,但似乎没有帮助。

如何用ggplot更改坐标轴上的数字格式?

我使用R和ggplot来绘制一些数据的散点图,除了y轴上的数字出现在计算机样式指数格式中,例如4e + 05,5e + 05等,都是很好的。不可接受的,所以我想把它们显示为50万,40万,等等。 获得正确的指数符号也是可以接受的。 该图的代码如下所示: 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") 任何帮助非常感谢。