{"id":210,"date":"2011-01-16T20:45:49","date_gmt":"2011-01-16T20:45:49","guid":{"rendered":"http:\/\/blog.espol.edu.ec\/nemo\/?p=210"},"modified":"2011-01-16T20:45:49","modified_gmt":"2011-01-16T20:45:49","slug":"creando-grafico-dispersion-ggplot2-part3","status":"publish","type":"post","link":"https:\/\/blog.espol.edu.ec\/nemo\/2011\/01\/16\/creando-grafico-dispersion-ggplot2-part3\/","title":{"rendered":"Creando un gr\u00e1fico de Dispersi\u00f3n con ggplot2 (Scatterplot) Parte 3 .- Introducci\u00f3n al uso de Condicionamiento"},"content":{"rendered":"<p>As\u00ed como se dijo al final de <a href=\"http:\/\/blog.espol.edu.ec\/nemo\/2010\/12\/03\/creando-grafico-dispersion-ggplot2-part1\/\">esta entrada<\/a>, se desea obtener un gr\u00e1fico de dispersi\u00f3n que nos permita visualizar tres variables: Altura, Peso y G\u00e9nero, de tal manera que las dos primeras variables se muestren en los ejes mientras que la tercera sea mostrada a trav\u00e9s de la combinaci\u00f3n de: Forma y Color del objeto geom\u00e9trico con que se representa los valores de la observaci\u00f3n, as\u00ed por ejemplo se tiene que el genero masculino es mostrado a trav\u00e9s de un triangulo de color celeste; <a href=\"http:\/\/blog.espol.edu.ec\/nemo\/2010\/12\/11\/creando-grafico-dispersion-ggplot2-part2\/\">aqu\u00ed<\/a> se genera se gr\u00e1fico descrito, pero se nota que hay observaciones superpuestas, la posible correcci\u00f3n es el uso de transparencias (explicadas en el blog anterior) y ahora se genera el gr\u00e1fico con transparencias para visualizar mejor las observaciones superpuestas.<\/p>\n<p><code>Usando qplot<\/code><\/p>\n<div style=\"overflow: auto\">\n<div class=\"geshifilter\">\n<pre style=\"font-family: monospace\"><span>&gt;<\/span><span style=\"color: #003399;font-weight: bold\"> qplot<\/span><span style=\"color: #009900\">(<\/span>Altura<span style=\"color: #339933\">, <\/span>Peso<span style=\"color: #339933\">, <\/span><a href=\"http:\/\/inside-r.org\/r-doc\/utils\/data\"><span style=\"color: #003399;font-weight: bold\">data<\/span><\/a>=datos<span style=\"color: #339933\">,<\/span><span style=\"color: #003399;font-weight: bold\"> shape<\/span>=Genero<span style=\"color: #339933\">,<\/span><span style=\"color: #003399;font-weight: bold\"> colour<\/span>=Genero<span style=\"color: #339933\">,<\/span>\r\n<span>+<\/span><span style=\"color: #003399;font-weight: bold\"> alpha<\/span>=<a href=\"http:\/\/inside-r.org\/r-doc\/base\/I\"><span style=\"color: #003399;font-weight: bold\">I<\/span><\/a><span style=\"color: #009900\">(<\/span><span style=\"color: #cc66cc\">1\/2<\/span><span style=\"color: #009900\">)<\/span><span style=\"color: #339933\">,<\/span><span style=\"color: #003399;font-weight: bold\"> size<\/span>=<a href=\"http:\/\/inside-r.org\/r-doc\/base\/I\"><span style=\"color: #003399;font-weight: bold\">I<\/span><\/a><span style=\"color: #009900\">(<\/span><span style=\"color: #cc66cc\">2<\/span><span style=\"color: #009900\">)<\/span><span style=\"color: #339933\">,<\/span><span style=\"color: #003399;font-weight: bold\"> xlab<\/span>=<span style=\"color: #0000ff\">\"Altura(metros)\"<\/span><span style=\"color: #339933\">,<\/span><span style=\"color: #003399;font-weight: bold\"> ylab<\/span>=<span style=\"color: #0000ff\">\"Peso(libras)\"<\/span><span style=\"color: #009900\">)<\/span><\/pre>\n<\/div>\n<\/div>\n<p><code>Usando ggplot<\/code><\/p>\n<div style=\"overflow: auto\">\n<div class=\"geshifilter\">\n<pre style=\"font-family: monospace\"><span>&gt;<\/span><span style=\"color: #003399;font-weight: bold\"> ggplot<\/span><span style=\"color: #009900\">(<\/span><a href=\"http:\/\/inside-r.org\/r-doc\/utils\/data\"><span style=\"color: #003399;font-weight: bold\">data<\/span><\/a>=datos<span style=\"color: #339933\">, <\/span><span style=\"color: #003399;font-weight: bold\">aes<\/span><span style=\"color: #009900\">(<\/span>Altura<span style=\"color: #339933\">, <\/span>Peso<span style=\"color: #009900\">)<\/span><span style=\"color: #009900\">)<\/span><span style=\"color: #003399;font-weight: bold\">+<\/span>\r\n<span>+<\/span><span style=\"color: #003399;font-weight: bold\"> geom_point<\/span><span style=\"color: #009900\">(<\/span><span style=\"color: #003399;font-weight: bold\">aes<\/span><span style=\"color: #009900\">(<\/span><span style=\"color: #003399;font-weight: bold\">shape<\/span>=Genero<span style=\"color: #339933\">,<\/span><span style=\"color: #003399;font-weight: bold\"> colour<\/span>=Genero<span style=\"color: #009900\">)<\/span><span style=\"color: #339933\">,<\/span><span style=\"color: #003399;font-weight: bold\"> alpha<\/span>=<span style=\"color: #cc66cc\">1\/2<\/span>,<span style=\"color: #003399;font-weight: bold\"> size<\/span>=<span style=\"color: #cc66cc\">2<\/span><span style=\"color: #009900\">)<\/span><span style=\"color: #003399;font-weight: bold\">+<\/span>\r\n<span>+<\/span><span style=\"color: #003399;font-weight: bold\"> xlab<\/span><span style=\"color: #009900\">(<\/span><span style=\"color: #0000ff\">\"Altura(metros)\"<\/span><span style=\"color: #009900\">)<\/span><span>+<\/span><span style=\"color: #003399;font-weight: bold\"> ylab<\/span><span style=\"color: #009900\">(<\/span><span style=\"color: #0000ff\">\"Peso(libras)\"<\/span><span style=\"color: #009900\">)<\/span><\/pre>\n<\/div>\n<\/div>\n<p><a href=\"http:\/\/blog.espol.edu.ec\/nemo\/files\/2010\/12\/AlturaVsPesoVsGenero_Alpha.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-218\" title=\"Altura Vs Peso Vs Genero + Alpha = 1\/2\" src=\"http:\/\/blog.espol.edu.ec\/nemo\/files\/2010\/12\/AlturaVsPesoVsGenero_Alpha.png\" alt=\"Altura Vs Peso Vs Genero + Alpha = 1\/2\" width=\"450\" height=\"450\" srcset=\"https:\/\/blog.espol.edu.ec\/nemo\/files\/2010\/12\/AlturaVsPesoVsGenero_Alpha.png 839w, https:\/\/blog.espol.edu.ec\/nemo\/files\/2010\/12\/AlturaVsPesoVsGenero_Alpha-150x150.png 150w, https:\/\/blog.espol.edu.ec\/nemo\/files\/2010\/12\/AlturaVsPesoVsGenero_Alpha-300x299.png 300w\" sizes=\"auto, (max-width: 450px) 100vw, 450px\" \/><\/a><\/p>\n<p>Efectivamente ahora son mejor detectados los elementos superpuestos,\u00a0gracias al uso de la transparencia. Ahora suponga que el uso de transparencias no es suficiente y a\u00fan es dif\u00edcil separar los conjuntos de datos\u00a0correspondientes\u00a0al G\u00e9nero: femenino y masculino; una posible soluci\u00f3n es dividir el gr\u00e1fico en dos sub-gr\u00e1ficos (uno por cada g\u00e9nero) usando la componente <a href=\"http:\/\/blog.espol.edu.ec\/nemo\/2010\/11\/05\/paquete-ggplot-bases\/\">condicionamiento<\/a> del paquete ggplot.<\/p>\n<p style=\"text-align: center\"><strong>Gr\u00e1fico de\u00a0Dispersi\u00f3n\u00a0usando condicionamiento<\/strong><\/p>\n<p>La idea del condicionamiento es simple, en general se tiene un conjunto de datos y con ellos se genera un gr\u00e1fico, la idea del condicionamiento es partir el subconjunto de datos en funci\u00f3n de una (o dos) variables de inter\u00e9s y generar varios sub-gr\u00e1ficos por cada partici\u00f3n creada.<\/p>\n<p>En el conjunto de datos con el que estamos trabajando, tenemos (<a href=\"http:\/\/blog.espol.edu.ec\/nemo\/2010\/12\/03\/creando-grafico-dispersion-ggplot2-part1\/\">entre otras<\/a>) las variables Altura,Peso y G\u00e9nero; la variable g\u00e9nero nos divide el conjunto de datos en dos subconjuntos: observaciones con genero masculino y g\u00e9nero femenino; entonces lo que vamos a realizar a continuaci\u00f3n es un gr\u00e1fico conformado por dos sub-gr\u00e1ficos (uno por cada G\u00e9nero) en cada uno de los cuales se visualice la relaci\u00f3n Altura vs Peso.<\/p>\n<p><code>Usando qplot<\/code><\/p>\n<div style=\"overflow: auto\">\n<div class=\"geshifilter\">\n<pre style=\"font-family: monospace\"><span>&gt;<\/span><span style=\"color: #003399;font-weight: bold\"> qplot<\/span><span style=\"color: #009900\">(<\/span>Altura<span style=\"color: #339933\">, <\/span>Peso<span style=\"color: #339933\">, <\/span><a href=\"http:\/\/inside-r.org\/r-doc\/utils\/data\"><span style=\"color: #003399;font-weight: bold\">data<\/span><\/a>=datos<span style=\"color: #339933\">,<\/span><span style=\"color: #003399;font-weight: bold\"> size=<\/span><a href=\"http:\/\/inside-r.org\/r-doc\/base\/I\"><span style=\"color: #003399;font-weight: bold\">I<\/span><\/a><span style=\"color: #009900\">(<\/span><span style=\"color: #cc66cc\">2<\/span><span style=\"color: #009900\">)<\/span><span style=\"color: #339933\">,<\/span>\r\n<span>+<\/span><span style=\"color: #003399;font-weight: bold\"> xlab<\/span>=<span style=\"color: #0000ff\">\"Altura(metros)\"<\/span><span style=\"color: #339933\">,<\/span><span style=\"color: #003399;font-weight: bold\"> ylab<\/span>=<span style=\"color: #0000ff\">\"Peso(libras)\"<\/span><span style=\"color: #009900\">)<\/span><span>+<\/span><span style=\"color: #003399;font-weight: bold\"> facet_grid<\/span><span style=\"color: #009900\">(<\/span>.<span>~<\/span>Genero<span style=\"color: #009900\">)<\/span><\/pre>\n<\/div>\n<\/div>\n<p><code>Usando ggplot<\/code><\/p>\n<div style=\"overflow: auto\">\n<div class=\"geshifilter\">\n<pre style=\"font-family: monospace\"><span>&gt;<\/span><span style=\"color: #003399;font-weight: bold\"> ggplot<\/span><span style=\"color: #009900\">(<\/span><a href=\"http:\/\/inside-r.org\/r-doc\/utils\/data\"><span style=\"color: #003399;font-weight: bold\">data<\/span><\/a>=datos<span style=\"color: #339933\">, <\/span><span style=\"color: #003399;font-weight: bold\">aes<\/span><span style=\"color: #009900\">(<\/span>Altura<span style=\"color: #339933\">, <\/span>Peso<span style=\"color: #009900\">)<\/span><span style=\"color: #009900\">)<\/span><span style=\"color: #003399;font-weight: bold\">+<\/span><span style=\"color: #003399;font-weight: bold\"> geom_point<\/span><span style=\"color: #009900\">(<\/span><span style=\"color: #003399;font-weight: bold\"> size=<\/span><span style=\"color: #cc66cc\">2<\/span><span style=\"color: #009900\">)<\/span><span style=\"color: #003399;font-weight: bold\">+<\/span>\r\n<span>+<\/span><span style=\"color: #003399;font-weight: bold\"> xlab<\/span><span style=\"color: #009900\">(<\/span><span style=\"color: #0000ff\">\"Altura(metros)\"<\/span><span style=\"color: #009900\">)<\/span><span>+<\/span><span style=\"color: #003399;font-weight: bold\">ylab<\/span><span style=\"color: #009900\">(<\/span><span style=\"color: #0000ff\">\"Peso(libras)\"<\/span><span style=\"color: #009900\">)<\/span><span>+<\/span><span style=\"color: #003399;font-weight: bold\"> facet_grid<\/span><span style=\"color: #009900\">(<\/span>.<span>~<\/span>Genero<span style=\"color: #009900\">)<\/span><\/pre>\n<\/div>\n<\/div>\n<p><a href=\"http:\/\/blog.espol.edu.ec\/nemo\/files\/2011\/01\/AlturaVsPesoVsGenero_Facet1.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-229\" title=\"Altura vs Peso con condicionamiento para la variable Genero\" src=\"http:\/\/blog.espol.edu.ec\/nemo\/files\/2011\/01\/AlturaVsPesoVsGenero_Facet1.png\" alt=\"Altura vs Peso con condicionamiento para la variable Genero\" width=\"450\" height=\"450\" srcset=\"https:\/\/blog.espol.edu.ec\/nemo\/files\/2011\/01\/AlturaVsPesoVsGenero_Facet1.png 839w, https:\/\/blog.espol.edu.ec\/nemo\/files\/2011\/01\/AlturaVsPesoVsGenero_Facet1-150x150.png 150w, https:\/\/blog.espol.edu.ec\/nemo\/files\/2011\/01\/AlturaVsPesoVsGenero_Facet1-300x299.png 300w\" sizes=\"auto, (max-width: 450px) 100vw, 450px\" \/><\/a><\/p>\n<p>As\u00ed podemos comparar entre G\u00e9neros\u00a0la diferencia de la relaci\u00f3n Altura vs Peso; se puede ver por ejemplo que los hombres acumulan m\u00e1s observaciones en la parte superior derecha, es m\u00e1s, si analizamos las observaciones con Altura mayor a 1.7m\u00a0se ve una marcada diferencia.<\/p>\n<blockquote><p>Formalmente el primer sub-gr\u00e1fico se puede leer como Relaci\u00f3n entre Altura vs Peso dado que el G\u00e9nero es igual a \"F\" (Femenino).<\/p><\/blockquote>\n<p>El comando que permite hacer el <em>condicionamiento<\/em> es el\u00a0<code>facet_grid()<\/code> y l variable con la que vamos a condicionar horizontalmente la definimos con <code>.~Variable<\/code>, si quisieramos condicionar en base a dos variables hacemos <code>VariableVertical~VariableHorizontal<\/code><\/p>\n<p>En pr\u00f3ximos post veremos m\u00e1s ejemplos del uso del condicionamiento.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>La idea del condicionamiento es simple, en general se tiene un conjunto de datos y con ellos se genera un gr\u00e1fico, la idea del condicionamiento es partir el subconjunto de datos en funci\u00f3n de una (o dos) variables de inter\u00e9s y generar varios sub-gr\u00e1ficos por cada partici\u00f3n creada<\/p><p><a class=\"more-link btn\" href=\"https:\/\/blog.espol.edu.ec\/nemo\/2011\/01\/16\/creando-grafico-dispersion-ggplot2-part3\/\">Seguir leyendo<\/a><\/p>\n","protected":false},"author":3803,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1688,771,1534],"tags":[27753,27752,26608,27757,2315,27754,29043,27690,17905,1171628,23818,29044,29045,26768,25354,25956,27756,1171624,25618,23851,29042,822,26451,12341,25355,1171627,27692,29046,325,29047,1292],"class_list":["post-210","post","type-post","status-publish","format-standard","hentry","category-estadistica","category-graficos","category-r","tag-3-variables","tag-alpha","tag-altura","tag-altura-vs-peso","tag-color","tag-colour","tag-condicionamiento","tag-dispersion","tag-edad","tag-estadistica","tag-estadisticos","tag-facet_grid","tag-faceting","tag-genero","tag-ggplot","tag-ggplot2","tag-grafico-de-dispersion","tag-graficos","tag-grammar-of-graphics","tag-ingenieria-en-estadistica","tag-lattice","tag-open-source","tag-paquete","tag-peso","tag-qplot","tag-r","tag-scatterplot","tag-separar-datos","tag-software-libre","tag-subgraficos","tag-transparencia","item-wrap"],"_links":{"self":[{"href":"https:\/\/blog.espol.edu.ec\/nemo\/wp-json\/wp\/v2\/posts\/210","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.espol.edu.ec\/nemo\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.espol.edu.ec\/nemo\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/nemo\/wp-json\/wp\/v2\/users\/3803"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/nemo\/wp-json\/wp\/v2\/comments?post=210"}],"version-history":[{"count":21,"href":"https:\/\/blog.espol.edu.ec\/nemo\/wp-json\/wp\/v2\/posts\/210\/revisions"}],"predecessor-version":[{"id":233,"href":"https:\/\/blog.espol.edu.ec\/nemo\/wp-json\/wp\/v2\/posts\/210\/revisions\/233"}],"wp:attachment":[{"href":"https:\/\/blog.espol.edu.ec\/nemo\/wp-json\/wp\/v2\/media?parent=210"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/nemo\/wp-json\/wp\/v2\/categories?post=210"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/nemo\/wp-json\/wp\/v2\/tags?post=210"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}