[R-es] Múltiples boxplots en un mismo gráfico

Olivier Nuñez onunez en iberstat.es
Lun Oct 11 14:24:11 CEST 2010


Aprovecho la pregunta de Félix,
para ilustrar los hermosos boxplot del package ggplot2.
Utilizando el data.frame "datos" diseñado por Jorge Virto a partir  
del problema de Félix,
el código de ggplot2 sería:

require(ggplot2)
p <- ggplot(datos,aes(etiq,queries))
p + geom_boxplot(aes(fill = expgl)) + labs(list(y = "Number of  
executed queries",x="Etiquetas"))


Un saludo. Olivier
--  
____________________________________

Olivier G. Nuñez
Email: onunez en iberstat.es
Tel : +34 663 03 69 09
Web: http://www.iberstat.es

____________________________________




El 11/10/2010, a las 14:09, Felix.Villanueva escribió:

>
> Muchas gracias Jorge, es exactamente lo que quería, estaba bastante
> lejos por lo que veo.
> un saludo y gracias de nuevo.
>
>  El Mon, 11 Oct 2010 13:40:04 +0200
> Jorge Virto <jorge.virto en ehu.es> escribió:
>> Hola Felix,
>>
>> puedes combinar los datos en un único data.frame y luego hacer todos
>> los boxplot en un mismo gráfico:
>>
>>> # Exponential
>>> etiqueta <- c(0.2, 0.4, 0.6, 0.8, 1.0, 1.2, 1.4, 1.6)
>>> datos.exp <- c(
>>  27340, 27829, 27108, 27387, 28059, 28977, 29355, 25977,
>>  28220, 27049, 27324, 28446, 25827, 29820, 25047, 27026,
>>  26104, 25472, 27270, 27202, 27285, 29765, 26624, 29713,
>>  29606, 27165, 29961, 29435, 29600, 28686, 29610, 27341,
>>  29665, 28623, 26970, 29245, 25001, 27048, 28864, 27818,
>>  29869, 29894, 25290, 26908, 27662, 26201, 28540, 29290,
>>  28946, 29653, 28052, 28529, 27008, 28291, 29055, 25062,
>>  28887, 26217, 27476, 27892, 29543, 29935, 29867, 25031,
>>  29105, 28034, 25954, 25088, 29468, 26502, 26834, 25136)
>>
>>> # Global
>>> datos.gl <- c(
>>  22727, 24635, 23759, 21890, 23044, 24308, 24218, 23927,
>>  20445, 21907, 21092, 20192, 24666, 24868, 24208, 24632,
>>  23864, 23426, 23265, 21213, 22469, 21003, 20774, 23490,
>>  24612, 21134, 23861, 22582, 21314, 20116, 22178, 23332,
>>  24276, 21504, 24045, 24220, 23373, 20273, 22561, 20506,
>>  23039, 23068, 23847, 23768, 22926, 20872, 21294, 20996,
>>  21449, 21920, 20343, 20871, 24014, 22731, 24327, 21055,
>>  23525, 20127, 23735, 23664, 24462, 22306, 22179, 24527,
>>  23402, 20973, 23285, 22096, 24588, 21073, 21506, 20207)
>>
>>> datos <- data.frame(queries=c(datos.exp,datos.gl),
>>                expgl=factor(rep(c("Exp","Glo"),each=72)),
>>                etiq=factor(rep(etiqueta,18)))
>>
>>> boxplot(queries~expgl*etiq, ylab="Number of executed
>>> queries",data=datos)
>>
>> Jorge
>>
>> El Monday 11 October 2010 12:49:43 Felix.Villanueva escribió:
>>> 0.2 0.4 0.6 0.8 1.0 1.2 1.4 1.6
>>>  27340 27829 27108 27387 28059 28977 29355 25977
>>>  28220 27049 27324 28446 25827 29820 25047 27026
>>>  26104 25472 27270 27202 27285 29765 26624 29713
>>>  29606 27165 29961 29435 29600 28686 29610 27341
>>>  29665 28623 26970 29245 25001 27048 28864 27818
>>>  29869 29894 25290 26908 27662 26201 28540 29290
>>>  28946 29653 28052 28529 27008 28291 29055 25062
>>>  28887 26217 27476 27892 29543 29935 29867 25031
>>>  29105 28034 25954 25088 29468 26502 26834 25136
>>>
>>> Mientras que el Global.data es igual con distintos valores:
>>>
>>> 0.2 0.4 0.6 0.8 1.0 1.2 1.4 1.6
>>>  22727 24635 23759 21890 23044 24308 24218 23927
>>>  20445 21907 21092 20192 24666 24868 24208 24632
>>>  23864 23426 23265 21213 22469 21003 20774 23490
>>>  24612 21134 23861 22582 21314 20116 22178 23332
>>>  24276 21504 24045 24220 23373 20273 22561 20506
>>>  23039 23068 23847 23768 22926 20872 21294 20996
>>>  21449 21920 20343 20871 24014 22731 24327 21055
>>>  23525 20127 23735 23664 24462 22306 22179 24527
>>>  23402 20973 23285 22096 24588 21073 21506 20207
>>>
>>> La idea sería comparar ambas series de datos, algo así:
>>>
>>> Exponential_frame=read.table("Exponential.data", header =T)
>>> Global_frame=read.table("Global.data", header =T)
>>>
>>> par(las=2,cex=1,mar=c(7.2,4,2,2))
>>>
>>> boxplot(Exponential_frame, ylab="Number of executed queries",
>>> col="yellow")
>>> boxplot(Global_frame, ylab="Number of executed queries",
>>> col="green", add=TRUE)
>>
>> _______________________________________________
>> R-help-es mailing list
>> R-help-es en r-project.org
>> https://stat.ethz.ch/mailman/listinfo/r-help-es
>
>
>
> -- 
> Dr. Félix Jesús Villanueva Molina
> Assistant Professor
> School of Computer Science
> Paseo de la Universidad, 4
> 13071 Ciudad Real (Spain)
> http://arco.esi.uclm.es
>
> _______________________________________________
> R-help-es mailing list
> R-help-es en r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-help-es



Más información sobre la lista de distribución R-help-es