2015-01-11 2 views
-3

У меня есть следующий код, который генерирует отдельные графики. Я хочу получить все эти сюжеты в одной сетке. Как это можно сделать? Есть ли альтернативный метод в решетке, чтобы получить аналогичные графики?графики в одном окне в ggplot2

v1 <- rep(c(2,4,6,8,10), each = 6) 
v2 <- rep(1:3,10) 
v3 <-runif(30,0.01,0.3) 
combined_data <- data.frame(v1,v2,v3) 
library(ggplot2) 
ggplot(combined_data,aes(x=v2,y=v3))+ 
stat_summary(fun.y=mean,geom="line",color="blue",linetype=2)+ 
stat_summary(fun.y=mean,geom="point", pch=1,size=3)+ 
scale_x_continuous(breaks=combined_data$v2)+ 
facet_grid(~v1)+ 
theme_bw() 
+0

Это не ясно, что вы хотите достичь. Добавьте 'geom_point()' в команду 'ggplot'? – Roland

+0

Я немного отредактировал свой код ... Он предоставляет 5 сюжетов ... Я хочу получить все эти сюжеты в одном окне – user3275911

+0

Я не понимаю. Они находятся в одном окне. – Roland

ответ

0

Я думаю, что это может быть то, что вы хотите. Вам нужно много работать с факторами ggplot2. Вы можете попробовать использовать geom = "line" во втором stat_summary.

v1 <- rep(c(2,4,6,8,10), each = 6) 
v2 <- rep(1:3,10) 
v3 <-runif(30,0.01,0.3) 
combined_data <- data.frame(v1,v2,v3) 
combined_data$f1 = as.factor(v1) 
library(ggplot2) 
ggplot(combined_data,aes(x=v2,y=v3,color=f1))+ 
    stat_summary(fun.y=mean,geom="line",color="blue",linetype=2)+ 
    stat_summary(fun.y=mean,geom="point", pch=1,size=3)+ 
    scale_x_continuous(breaks=combined_data$v2)+ 
    #facet_grid(~v1)+ 
    theme_bw() 

выходы: enter image description here

+0

, есть пять сюжетов ... если я удалю последнюю строку ... это показывает только один сюжет – user3275911

+1

Итак, я отредактировал свой ответ. На самом деле я на самом деле обыграл его на пару минут (думаю), но он включил хороший сюжет, который я не понимал, что вы могли бы сделать. –

1
v1 <- rep(c(2,4,6,8,10), each = 6) 
v2 <- rep(1:3,10) 
v3 <-runif(30,0.01,0.3) 
combined_data <- data.frame(v1,v2,v3) 
library(ggplot2) 
ggplot(combined_data,aes(x=v2,y=v3))+ 
stat_summary(fun.y=mean,geom="line",aes(color=as.factor(v1)),linetype=2)+ 
stat_summary(fun.y=mean,geom="point",pch=1,size=3,aes(color=as.factor(v1)))+ 
scale_x_continuous(breaks=combined_data$v2)+ 
#facet_grid(~v1)+ 
theme_bw() 

enter image description here

+0

, но он показывает одну строку на графиках ... но есть 5 строк (по одной для каждой категории v1 .... где каждая отдельная строка на самом деле является графиком среднего значения v3 для каждой категории v2). И я хочу получить все эти 5 строк в одном графике – user3275911

+0

Я получаю пять строк с моим кодом. – CMichael

+0

спасибо, дорогой ... это именно то, что я хочу – user3275911

1

Вы должны добавить aes(group = v1) к stat_summary:

library(ggplot2) 
ggplot(combined_data,aes(x = v2, y = v3))+ 
    stat_summary(fun.y = mean, geom = "line", color = "blue", linetype = 2, 
       aes(group = v1))+ 
    stat_summary(fun.y = mean, geom = "point", pch = 1, size = 3, 
       aes(group = v1))+ 
    scale_x_continuous(breaks = v2)+ 
    theme_bw() 
Смежные вопросы