<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Ggplot2 on Bastián Olea</title>
    <link>https://bastianolea.rbind.io/tags/ggplot2/</link>
    <description>Recent content in Ggplot2 on Bastián Olea</description>
    <generator>Hugo</generator>
    <language>es-ES</language>
    <lastBuildDate>Fri, 24 Apr 2026 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://bastianolea.rbind.io/tags/ggplot2/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Tutorial: visualización de datos con {ggplot2}</title>
      <link>https://bastianolea.rbind.io/blog/r_introduccion/tutorial_visualizacion_ggplot/</link>
      <pubDate>Fri, 21 Mar 2025 00:00:00 +0000</pubDate>
      <guid>https://bastianolea.rbind.io/blog/r_introduccion/tutorial_visualizacion_ggplot/</guid>
      <description>&lt;a href=&#34;ggplot2-featured.jpg&#34; target=&#34;_blank&#34;&gt;&#xA;&#xA;  &lt;img src=&#34;ggplot2-featured.jpg&#34; style=&#34;border-radius: 5px; width: 80%; max-width: 700px; display: block; margin: auto; margin-bottom: 8px; margin-top: 8px;&#34;&gt;&#xA;  &#xA;&lt;/a&gt;&#xA;&lt;p&gt;&lt;code&gt;{ggplot2}&lt;/code&gt; es una librería de visualización de datos bastante popular en el mundo de la ciencia de datos. Sus principales características son su atractivo, su conveniencia para la exploración de datos, un gran potencial de personalización, y un extenso ecosistema de extensiones que nos permiten generar visualizaciones prácticamente de cualquier tipo.&lt;/p&gt;&#xA;&lt;p&gt;Otro beneficio de usarlo es propio de el uso de cualquier herramienta programática para generar resultados en el ámbito del análisis de datos: la reusabilidad del código, que nos permite especificar una sola vez el resultado que queremos y luego volver a aplicarlo infinitas veces con distintos datos, datos actualizados, o variaciones de un conjunto de datos, etc.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Gráficos de puntos comparativos o _dumbbell_ en `{ggplot2}`</title>
      <link>https://bastianolea.rbind.io/blog/ggplot_dumbbell/</link>
      <pubDate>Fri, 24 Apr 2026 00:00:00 +0000</pubDate>
      <guid>https://bastianolea.rbind.io/blog/ggplot_dumbbell/</guid>
      <description>&lt;p&gt;Los &lt;strong&gt;gráficos de puntos comparativos&lt;/strong&gt;, también conocidos como &lt;em&gt;dumbbell&lt;/em&gt; o de &lt;em&gt;mancuernas&lt;/em&gt;, son un tipo de visualización que muestra el &lt;strong&gt;cambio en los valores de un mismo grupo en dos momentos distintos.&lt;/strong&gt; Cada valor se representa con un círculo, ambos conectados por una línea, donde la posición representa la cifra y su distancia representa la brecha. El objetivo de estos gráficos es &lt;strong&gt;comparar&lt;/strong&gt; el cambio del valor.&lt;/p&gt;&#xA;&lt;p&gt;Si bien los gráficos de barras también permiten comparar valores, el gráfico &lt;em&gt;dumbell&lt;/em&gt; hace más explícita la comparación al eliminar otros elementos distractores y enfocar la atención en la distancia entre los puntos.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Extensiones recomendadas para mejorar tus gráficos de `{ggplot2}`</title>
      <link>https://bastianolea.rbind.io/blog/ggplot_extensiones/</link>
      <pubDate>Fri, 27 Mar 2026 00:00:00 +0000</pubDate>
      <guid>https://bastianolea.rbind.io/blog/ggplot_extensiones/</guid>
      <description>&lt;div style=&#34;display: flex; align-items: center; gap: 15px; padding: 14px; &#xA;            background-color: #493365;&#xA;            border-radius: 6px;&#xA;            margin: 20px 40px 20px 40px;&#34;&gt;&#xA;  &#xA;  &lt;div style=&#34;flex-shrink: 0;&#34;&gt;&#xA;    &lt;i class=&#34;fas fa-triangle-exclamation&#34; style=&#34;font-size: 130%; margin-left: 2px; opacity: 1; color: #EAD2FA;&#34;&gt;&lt;/i&gt;&#xA;  &lt;/div&gt;&#xA;  &#xA;  &lt;aside style = &#34;font-size: 90%; color: #EAD2FA;&#34;&gt;&#xA;    Publicación en construcción! A medida que encuentre (y recuerde) más extensiones las iré listando aquí.&#xA;  &lt;/aside&gt;&#xA;  &#xA;&lt;/div&gt;&#xA;&lt;!---&#xA;&lt;a href=&#34;ggplot2_extensiones_featured.png&#34; target=&#34;_blank&#34;&gt;&#xA;&#xA;  &lt;img src=&#34;ggplot2_extensiones_featured.png&#34; style=&#39;float: right; border-radius: 5px; max-width: 300px; margin-left: 24px; margin-bottom: 24px;&#39;&gt;&#xA;  &#xA;&lt;/a&gt;&#xA;--&gt;&#xA;&lt;div class=&#39;imagen_lateral&#39;&gt;&#xA;  &lt;img src=&#34;ggplot2_extensiones.png&#34;&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Una de las ventajas de usar &lt;code&gt;{ggplot2}&lt;/code&gt; para visualización de datos en R es su &lt;strong&gt;flexibilidad&lt;/strong&gt; y capacidad de &lt;strong&gt;personalización&lt;/strong&gt;. Existen &#xA;&lt;a href=&#34;https://exts.ggplot2.tidyverse.org&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;muchas extensiones desarrolladas por la comunidad&lt;/a&gt; para agregar nuevas funcionalidades, formas de visualizar datos, mejoras, paletas de colores y más.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Temas de colores personalizados para tus gráficos {ggplot2}</title>
      <link>https://bastianolea.rbind.io/blog/ggplot_temas/</link>
      <pubDate>Thu, 22 Jan 2026 00:00:00 +0000</pubDate>
      <guid>https://bastianolea.rbind.io/blog/ggplot_temas/</guid>
      <description>&lt;p&gt;Darle un toque de color a tus gráficos produce visualizaciones con &lt;strong&gt;más personalidad&lt;/strong&gt; y &lt;strong&gt;mayor impacto&lt;/strong&gt;. Pero cambiar el color de cada elemento puede parecer engorroso 😣&lt;/p&gt;&#xA;&lt;p&gt;¡Pero es fácil! Veamos cómo se puede hacer &#xA;&lt;a href=&#34;https://tidyverse.org/blog/2025/09/ggplot2-4-0-0/#theme-improvements&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;con las nuevas funcionalidades de &lt;code&gt;{ggplot2}&lt;/code&gt; versión 4.0.&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Primero generemos datos al azar para crear una visualización de demostración:&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-r&#34; data-lang=&#34;r&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nf&#34;&gt;library&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;dplyr&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# crear datos al azar&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;datos&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;lt;-&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;tibble&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;a&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;m&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;10&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;n&#34;&gt;b&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;rnorm&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;10&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;mean&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;m&#34;&gt;7&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;sd&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;m&#34;&gt;2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;                &lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Ahora creemos un gráfico básico:&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-r&#34; data-lang=&#34;r&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nf&#34;&gt;library&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ggplot2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;grafico&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;lt;-&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;datos&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;|&amp;gt;&lt;/span&gt; &#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;nf&#34;&gt;ggplot&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;+&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;nf&#34;&gt;aes&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;x&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;as.factor&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;a&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;y&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;b&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;+&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;c1&#34;&gt;# capa de columnas&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;nf&#34;&gt;geom_col&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;width&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;m&#34;&gt;0.5&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;+&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;c1&#34;&gt;# capa de texto&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;nf&#34;&gt;geom_text&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nf&#34;&gt;aes&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;label&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;round&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;b&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;m&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;y&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;b&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;+&lt;/span&gt; &lt;span class=&#34;m&#34;&gt;0.6&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;),&lt;/span&gt; &#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;            &lt;span class=&#34;n&#34;&gt;size&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;m&#34;&gt;3&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;fontface&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s&#34;&gt;&amp;#34;bold&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;grafico&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;img src=&#34;ggplot_temas.markdown_strict_files/figure-markdown_strict/unnamed-chunk-2-1.png&#34; width=&#34;768&#34; /&gt;&#xA;&lt;p&gt;Agreguemos algunas capas extra para mejorar la apariencia de nuestro gráfico:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Convierte gráficos `{ggplot2}` en visualizaciones interactivas con `{ggiraph}`</title>
      <link>https://bastianolea.rbind.io/blog/ggiraph/</link>
      <pubDate>Fri, 07 Nov 2025 00:00:00 +0000</pubDate>
      <guid>https://bastianolea.rbind.io/blog/ggiraph/</guid>
      <description>&lt;link href=&#34;ggiraph_files/libs/htmltools-fill-0.5.8.1/fill.css&#34; rel=&#34;stylesheet&#34; /&gt;&#xA;&lt;script src=&#34;ggiraph_files/libs/htmlwidgets-1.6.4/htmlwidgets.js&#34;&gt;&lt;/script&gt;&#xA;&lt;link href=&#34;ggiraph_files/libs/ggiraphjs-0.9.4/girafe.css&#34; rel=&#34;stylesheet&#34; /&gt;&#xA;&lt;script src=&#34;ggiraph_files/libs/ggiraphjs-0.9.4/girafe.js&#34;&gt;&lt;/script&gt;&#xA;&lt;script src=&#34;ggiraph_files/libs/girafe-binding-0.9.6/girafe.js&#34;&gt;&lt;/script&gt;&#xA;&lt;link href=&#34;ggiraph_files/libs/liberation-sans-0.5.0/css/liberation-sans.css&#34; rel=&#34;stylesheet&#34; /&gt;&#xA;&lt;link href=&#34;ggiraph_files/libs/liberation-serif-0.5.0/css/liberation-serif.css&#34; rel=&#34;stylesheet&#34; /&gt;&#xA;&lt;link href=&#34;ggiraph_files/libs/liberation-mono-0.5.0/css/liberation-mono.css&#34; rel=&#34;stylesheet&#34; /&gt;&#xA;&lt;a href=&#34;featured.png&#34; target=&#34;_blank&#34;&gt;&#xA;&#xA;  &lt;img src=&#34;featured.png&#34; style=&#34;border-radius: 5px; width: 80%; max-width: 700px; display: block; margin: auto; margin-bottom: 8px; margin-top: 8px;&#34;&gt;&#xA;  &#xA;&lt;/a&gt;&#xA;&lt;p&gt;&#xA;&lt;a href=&#34;https://davidgohel.github.io/ggiraph/&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;&lt;code&gt;{ggiraph}&lt;/code&gt; es un paquete de R&lt;/a&gt; que permite agregar &lt;strong&gt;interactividad&lt;/strong&gt; a gráficos &lt;code&gt;{ggplot2}&lt;/code&gt;. Esto significa que tus gráficos podrán mostrar información extra al pasar el cursor encima (&lt;em&gt;tooltips&lt;/em&gt;), hacer que se destaquen u oculten elementos al pasar el cursor, hacer clic en elementos del gráfico para generar cambios en aplicaciones, y más.&lt;/p&gt;&#xA;&lt;p&gt;Un beneficio de &lt;code&gt;{ggiraph}&lt;/code&gt; es que, a diferencia de alternativas como &lt;code&gt;{plotly}&lt;/code&gt; o &lt;code&gt;{highcharter}&lt;/code&gt;, &lt;strong&gt;no necesitas aprender a usar un paquete de visualización nuevo&lt;/strong&gt;, porque &lt;code&gt;{ggiraph}&lt;/code&gt; usa los gráficos generados por &lt;code&gt;{ggplot2}&lt;/code&gt; y &lt;strong&gt;mantiene al 100% su apariencia&lt;/strong&gt;. Esto significa que tu gráfico interactivo se verá idéntico a tu gráfico de &lt;code&gt;{ggplot2}&lt;/code&gt; (a diferencia de con &lt;code&gt;ggplotly()&lt;/code&gt; 😒). Esto es gracias a que &lt;code&gt;{ggiraph}&lt;/code&gt; toma el gráfico que hiciste y lo convierte a &lt;code&gt;SVG&lt;/code&gt;, un formato de imagen vectorial que es compatible con HTML y CSS, lo que permite la interactividad.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Crea un mapa de Chile desde la cartografía oficial en R</title>
      <link>https://bastianolea.rbind.io/blog/tutorial_mapa_chile_subdere/</link>
      <pubDate>Tue, 14 Oct 2025 00:00:00 +0000</pubDate>
      <guid>https://bastianolea.rbind.io/blog/tutorial_mapa_chile_subdere/</guid>
      <description>&lt;p&gt;En post anteriores mostré cómo hacer &#xA;&lt;a href=&#34;../../../blog/tutorial_mapa_chile/&#34;&gt;mapas comunales y regionales de Chile&lt;/a&gt; con R, y a hacer &#xA;&lt;a href=&#34;../../../blog/tutorial_mapa_urbano/&#34;&gt;mapas de los territorios urbanos del país&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;En este tutorial aprenderemos a crear mapas de Chile en R usando datos geográficos o &lt;em&gt;shapes&lt;/em&gt; oficiales de Chile, obtenidos desde la &#xA;&lt;a href=&#34;https://ide.subdere.gov.cl/descargas-con-filtros/&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Subsecretaría de Desarrollo Regional y Administrativo&lt;/a&gt; (Subdere) y la &#xA;&lt;a href=&#34;https://www.bcn.cl/siit/mapas_vectoriales&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Biblioteca del Congreso Nacional de Chile&lt;/a&gt; (BCN).&lt;/p&gt;&#xA;&lt;p&gt;El objetivo será aprender a visualizar mapas desde &lt;em&gt;shapefiles&lt;/em&gt; obtenidos de internet, y a procesar datos geográficos más complejos con R, para generar mapas de Chile con polígonos y límites geográficamente correctos.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Tipografías personalizadas en gráficos {ggplot2}</title>
      <link>https://bastianolea.rbind.io/blog/ggplot_tipografias/</link>
      <pubDate>Tue, 26 Aug 2025 00:00:00 +0000</pubDate>
      <guid>https://bastianolea.rbind.io/blog/ggplot_tipografias/</guid>
      <description>&lt;p&gt;¿Quieres darle un toque personalizado a tus gráficos? O tal vez alinearlos mejor al mensaje que quieres entregar, o a los lineamientos estéticos de tu organización. En esta breve guía te explico cómo cambiar las tipografías, tipos de letra o fuentes de tus gráficos hechos en R &#xA;&lt;a href=&#34;../../../tags/ggplot2/&#34;&gt;con &lt;code&gt;{ggplot2}&lt;/code&gt;&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;a href=&#34;featured.png&#34; target=&#34;_blank&#34;&gt;&#xA;&#xA;  &lt;img src=&#34;featured.png&#34; style=&#34;border-radius: 5px; width: 80%; max-width: 700px; display: block; margin: auto; margin-bottom: 8px; margin-top: 8px;&#34;&gt;&#xA;  &#xA;&lt;/a&gt;&#xA;&lt;p&gt;Para demostrar, primero creemos datos ficticios siguiento distribuciones normales:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Gráfico de mis artistas y géneros musicales más escuchados según Last.fm</title>
      <link>https://bastianolea.rbind.io/blog/2025-07-28/</link>
      <pubDate>Wed, 30 Jul 2025 00:00:00 +0000</pubDate>
      <guid>https://bastianolea.rbind.io/blog/2025-07-28/</guid>
      <description>&lt;a href=&#34;camcorder4.webp&#34; target=&#34;_blank&#34;&gt;&#xA;&#xA;  &lt;img src=&#34;camcorder4.webp&#34; style=&#34;border-radius: 5px; width: 80%; max-width: 700px; display: block; margin: auto; margin-bottom: 8px; margin-top: 8px;&#34;&gt;&#xA;  &#xA;&lt;/a&gt;&#xA;&lt;p&gt;&#xA;&lt;a href=&#34;https://www.last.fm&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Last.fm&lt;/a&gt; es una plataforma donde las personas van registrando la música que escuchan diariamente, y luego pueden obtener estadísticas sobre sus gustos musicales y recomendaciones basadas en los gustos de usuarios similares.&lt;/p&gt;&#xA;&lt;p&gt;Tenía ganas de reproducir en R uno de los gráficos que aparecen en el reporte mensual:&lt;/p&gt;&#xA;&lt;a href=&#34;inspo.png&#34; target=&#34;_blank&#34;&gt;&#xA;&#xA;  &lt;img src=&#34;inspo.png&#34; style=&#34;border-radius: 5px; width: 80%; max-width: 700px; display: block; margin: auto; margin-bottom: 8px; margin-top: 8px;&#34;&gt;&#xA;  &#xA;&lt;/a&gt;&#xA;&lt;p&gt;Así que me apliqué con &lt;code&gt;{ggplot2}&lt;/code&gt;, usando un paquete que agrega una visualización similar, y usando otro paquete para descargar los datos de mi perfil de Last.fm.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Generar múltiples gráficos automáticamente con R</title>
      <link>https://bastianolea.rbind.io/blog/ggplot_purrr/</link>
      <pubDate>Mon, 14 Jul 2025 00:00:00 +0000</pubDate>
      <guid>https://bastianolea.rbind.io/blog/ggplot_purrr/</guid>
      <description>&lt;p&gt;Uno de los principales beneficios del análisis de datos en base a programación es que &lt;strong&gt;el código es reutilizable.&lt;/strong&gt; Esto significa que cualquier cosa que hayas hecho puedes &lt;strong&gt;reutilizarla&lt;/strong&gt;, y así ahorrar trabajo. El siguiente paso es reutilizar el código de tal forma que sirva para aplicarlo a varios casos a la vez, incluso cientos o miles de veces.&lt;/p&gt;&#xA;&lt;p&gt;La reutilización de código es súper conveniente para la visualización de datos: una vez que diseñaste un gráfico, con muy pocas modificaciones puedes adaptarlo para que funcione con una fuente de datos distintas, una fuente actualizada, o para que visualice distintas variables.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Gráfico de densidad tipo Joy Division en {ggplot2}</title>
      <link>https://bastianolea.rbind.io/blog/2025-07-11/</link>
      <pubDate>Sat, 12 Jul 2025 00:00:00 +0000</pubDate>
      <guid>https://bastianolea.rbind.io/blog/2025-07-11/</guid>
      <description>&lt;p&gt;Existe un gráfico estadístico muy famoso por haber aparecido en la portada del disco &lt;em&gt;Unknown Pleasures&lt;/em&gt; de Joy Division:&lt;/p&gt;&#xA;&lt;a href=&#34;joy_division.jpg&#34; target=&#34;_blank&#34;&gt;&#xA;&#xA;  &lt;img src=&#34;joy_division.jpg&#34; style=&#34;border-radius: 5px; width: 80%; max-width: 700px; display: block; margin: auto; margin-bottom: 8px; margin-top: 8px;&#34;&gt;&#xA;  &#xA;&lt;/a&gt;&#xA;&lt;p&gt;Se trata de un gráfico de densidad, donde las densidades están apiladas verticalmente y se sobreponen, dando una apariencia montañosa, cordillerana y casi tridimensional.&lt;/p&gt;&#xA;&lt;p&gt;En este post reproduciremos este gráfico en R, pero usando datos socioeconómicos de la &#xA;&lt;a href=&#34;https://observatorio.ministeriodesarrollosocial.gob.cl/encuesta-casen-2022&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Encuesta de caracterización socioeconómica nacional (Casen) 2022.&lt;/a&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Etiquetas de texto que se repelen entre sí con {ggrepel}</title>
      <link>https://bastianolea.rbind.io/blog/ggrepel/</link>
      <pubDate>Fri, 11 Jul 2025 00:00:00 +0000</pubDate>
      <guid>https://bastianolea.rbind.io/blog/ggrepel/</guid>
      <description>&lt;link href=&#34;index_files/libs/htmltools-fill-0.5.8.1/fill.css&#34; rel=&#34;stylesheet&#34; /&gt;&#xA;&lt;script src=&#34;index_files/libs/htmlwidgets-1.6.4/htmlwidgets.js&#34;&gt;&lt;/script&gt;&#xA;&lt;script src=&#34;index_files/libs/d3-bundle-5.16.0/d3-bundle.min.js&#34;&gt;&lt;/script&gt;&#xA;&lt;script src=&#34;index_files/libs/d3-lasso-0.0.5/d3-lasso.min.js&#34;&gt;&lt;/script&gt;&#xA;&lt;script src=&#34;index_files/libs/save-svg-as-png-1.4.17/save-svg-as-png.min.js&#34;&gt;&lt;/script&gt;&#xA;&lt;script src=&#34;index_files/libs/flatbush-4.4.0/flatbush.min.js&#34;&gt;&lt;/script&gt;&#xA;&lt;link href=&#34;index_files/libs/ggiraphjs-0.8.10/ggiraphjs.min.css&#34; rel=&#34;stylesheet&#34; /&gt;&#xA;&lt;script src=&#34;index_files/libs/ggiraphjs-0.8.10/ggiraphjs.min.js&#34;&gt;&lt;/script&gt;&#xA;&lt;script src=&#34;index_files/libs/girafe-binding-0.8.10/girafe.js&#34;&gt;&lt;/script&gt;&#xA;&lt;p&gt;En este post veremos a agregar &lt;strong&gt;textos que se distancian entre sí automáticamente&lt;/strong&gt; a tus gráficos. Esto sirve, por ejemplo, para mejorar visualizaciones de datos a las que queremos agregarle texto que identifique las observaciones, aún cuando las observaciones son demasiadas como para etiquetarlas a todas.&lt;/p&gt;&#xA;&lt;p&gt;Usaremos el &#xA;&lt;a href=&#34;https://ggrepel.slowkow.com&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;paquete de R &lt;code&gt;{ggrepel}&lt;/code&gt;&lt;/a&gt; para etiquetar puntos en un gráfico con textos que se repelen entre sí de forma automática.&lt;/p&gt;&#xA;&#xA;&#xA;&lt;div style=&#34;display: flex; align-items: center; gap: 15px; padding: 14px; &#xA;            background-color: #493365;&#xA;            border-radius: 6px;&#xA;            margin: 20px 40px 20px 40px;&#34;&gt;&#xA;  &#xA;  &lt;div style=&#34;flex-shrink: 0;&#34;&gt;&#xA;    &lt;i class=&#34;fas fa-triangle-exclamation&#34; style=&#34;font-size: 130%; margin-left: 2px; opacity: 1; color: #EAD2FA;&#34;&gt;&lt;/i&gt;&#xA;  &lt;/div&gt;&#xA;  &#xA;  &lt;aside style = &#34;font-size: 90%; color: #EAD2FA;&#34;&gt;&#xA;    Este post requiere conocimientos de &lt;code&gt;{ggplot2}&lt;/code&gt;. Si quieres aprender a hacer gráficos en R, revisa &#xA;&lt;a href=&#34;https://bastianolea.rbind.io/blog/r_introduccion/tutorial_visualizacion_ggplot/&#34;&gt;este tutorial sobre visualización de datos&lt;/a&gt; primero.&#xA;  &lt;/aside&gt;&#xA;  &#xA;&lt;/div&gt;&#xA;&#xA;&#xA;&#xA;&#xA;&lt;h3 id=&#34;datos&#34;&gt;Datos&#xA;  &lt;a href=&#34;#datos&#34;&gt;&lt;svg class=&#34;anchor-symbol&#34; aria-hidden=&#34;true&#34; height=&#34;26&#34; width=&#34;26&#34; viewBox=&#34;0 0 22 22&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;&#xA;      &lt;path d=&#34;M0 0h24v24H0z&#34; fill=&#34;currentColor&#34;&gt;&lt;/path&gt;&#xA;      &lt;path d=&#34;M3.9 12c0-1.71 1.39-3.1 3.1-3.1h4V7H7c-2.76.0-5 2.24-5 5s2.24 5 5 5h4v-1.9H7c-1.71.0-3.1-1.39-3.1-3.1zM8 13h8v-2H8v2zm9-6h-4v1.9h4c1.71.0 3.1 1.39 3.1 3.1s-1.39 3.1-3.1 3.1h-4V17h4c2.76.0 5-2.24 5-5s-2.24-5-5-5z&#34;&gt;&lt;/path&gt;&#xA;    &lt;/svg&gt;&lt;/a&gt;&#xA;&lt;/h3&gt;&#xA;&lt;p&gt;A modo de ejemplo, usaremos datos del &#xA;&lt;a href=&#34;https://www.bcn.cl/procesoconstituyente/plebiscito2020&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;plebiscito de entrada de 2020 en Chile&lt;/a&gt;, obtenidos desde el &#xA;&lt;a href=&#34;https://github.com/bastianolea/plebiscitos_chile&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;repositorio de datos sobre los plebiscitos constitucionales&lt;/a&gt;. Éste repositorio, parte de mi &#xA;&lt;a href=&#34;https://bastianolea.github.io/datos_sociales/&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;mini sitio de datos sociales chilenos&lt;/a&gt;, ofrece versiones limpias y listas para usar de los resultados electorales de estos procesos.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Análisis y visualización de correlaciones en R</title>
      <link>https://bastianolea.rbind.io/blog/correlaciones/</link>
      <pubDate>Wed, 09 Jul 2025 00:00:00 +0000</pubDate>
      <guid>https://bastianolea.rbind.io/blog/correlaciones/</guid>
      <description>&lt;p&gt;El análisis de correlación es una técnica estadística que nos permite &lt;strong&gt;identificar si existen relaciones lineales entre distintas variables.&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;Lo que hace una correlación es indicarnos si dos variables tienen una relación entre sí, en el sentido de que el aumento o disminución de una de las variables ocurra en concordancia con la otra variable, ya sea una &lt;strong&gt;correlación positiva&lt;/strong&gt; (si una variable aumenta, la otra también) o &lt;strong&gt;correlación negativa&lt;/strong&gt; (si una variable aumenta, la otra disminuye).&lt;/p&gt;</description>
    </item>
    <item>
      <title>Controla las dimensiones de tus gráficos con {ggview}</title>
      <link>https://bastianolea.rbind.io/blog/ggview/</link>
      <pubDate>Tue, 08 Jul 2025 00:00:00 +0000</pubDate>
      <guid>https://bastianolea.rbind.io/blog/ggview/</guid>
      <description>&lt;p&gt;&#xA;&lt;a href=&#34;https://github.com/idmn/ggview&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;&lt;code&gt;{ggview}&lt;/code&gt;&lt;/a&gt; es un paquete de R que te ayuda a crear gráficos en &lt;code&gt;{ggplot2}&lt;/code&gt; manteniendo un tamaño fijo.&lt;/p&gt;&#xA;&lt;p&gt;En RStudio, los gráficos que aparecen en el panel de gráficos (&lt;em&gt;Plots&lt;/em&gt;) se adaptan al tamaño de dicho panel. Por ejemplo, si tu panel es chico, el gráfico no tendría espacio para verse bien:&lt;/p&gt;&#xA;&lt;a href=&#34;grafico_chico.png&#34; target=&#34;_blank&#34;&gt;&#xA;&#xA;  &lt;img src=&#34;grafico_chico.png&#34; style=&#34;border-radius: 5px; width: 80%; max-width: 700px; display: block; margin: auto; margin-bottom: 8px; margin-top: 8px;&#34;&gt;&#xA;  &#xA;&lt;/a&gt;&#xA;&lt;p&gt;Pero si amplías el tamaño del panel lo suficiente, el gráfico se verá mejor:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Visualizando texto como nubes de palabras en R</title>
      <link>https://bastianolea.rbind.io/blog/nubes_de_palabras/</link>
      <pubDate>Sat, 05 Jul 2025 00:00:00 +0000</pubDate>
      <guid>https://bastianolea.rbind.io/blog/nubes_de_palabras/</guid>
      <description>&lt;p&gt;Una de las formas más intuitivas de visualizar datos de texto son las nubes de palabras. En las nubes de palabras seleccionamos un subconjunto de las palabras del texto que queremos analizar y las distribuimos en un gráfico, donde las palabras que aparecen más frecuentemente aparecen más grandes, y usualmente al centro. Sirven para ver rápidamente los conceptos clave de un documento o un corpus de documentos.&lt;/p&gt;&#xA;&lt;p&gt;En este post veremos dos formas de crear nubes de palabras con R: con &lt;code&gt;{wordcloud2}&lt;/code&gt; y con &lt;code&gt;{ggplot2}&lt;/code&gt;. Para empezar, necesitamos una base de datos que tenga información de texto; por ejemplo, una base donde cada fila contenga una respuesta abierta de una encuesta, una reseña de un producto, un párrafo de un texto, un capítulo de un libro, o un libro completo.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Gráficos para identificar datos outliers o anómalos en R</title>
      <link>https://bastianolea.rbind.io/blog/2025-06-18/</link>
      <pubDate>Wed, 18 Jun 2025 00:00:00 +0000</pubDate>
      <guid>https://bastianolea.rbind.io/blog/2025-06-18/</guid>
      <description>&lt;link href=&#34;index_files/libs/htmltools-fill-0.5.8.1/fill.css&#34; rel=&#34;stylesheet&#34; /&gt;&#xA;&lt;script src=&#34;index_files/libs/htmlwidgets-1.6.4/htmlwidgets.js&#34;&gt;&lt;/script&gt;&#xA;&lt;script src=&#34;index_files/libs/d3-bundle-5.16.0/d3-bundle.min.js&#34;&gt;&lt;/script&gt;&#xA;&lt;script src=&#34;index_files/libs/d3-lasso-0.0.5/d3-lasso.min.js&#34;&gt;&lt;/script&gt;&#xA;&lt;script src=&#34;index_files/libs/save-svg-as-png-1.4.17/save-svg-as-png.min.js&#34;&gt;&lt;/script&gt;&#xA;&lt;script src=&#34;index_files/libs/flatbush-4.4.0/flatbush.min.js&#34;&gt;&lt;/script&gt;&#xA;&lt;link href=&#34;index_files/libs/ggiraphjs-0.8.10/ggiraphjs.min.css&#34; rel=&#34;stylesheet&#34; /&gt;&#xA;&lt;script src=&#34;index_files/libs/ggiraphjs-0.8.10/ggiraphjs.min.js&#34;&gt;&lt;/script&gt;&#xA;&lt;script src=&#34;index_files/libs/girafe-binding-0.8.10/girafe.js&#34;&gt;&lt;/script&gt;&#xA;&lt;p&gt;Los datos anómalos o &lt;em&gt;outliers&lt;/em&gt; son datos que se alejan considerablemente de los demás. Estos datos pueden resultar problemáticos para ciertos análisis, pueden ser indicio de errores en la recolección o limpieza de datos, o pueden requerir que tomemos ciertas decisiones para corregirlos o excluirlos.&lt;/p&gt;&#xA;&lt;p&gt;En este post &lt;strong&gt;simularemos un dataset&lt;/strong&gt; con datos anómalos, y luego mostraremos algunas formas de &lt;strong&gt;visualización de datos anómalos&lt;/strong&gt; &#xA;&lt;a href=&#34;../../../tags/ggplot2/&#34;&gt;en &lt;code&gt;{ggplot2}&lt;/code&gt;&lt;/a&gt; para tomar decisiones al respecto. Al final crearemos un &lt;strong&gt;gráfico interactivo&lt;/strong&gt; &#xA;&lt;a href=&#34;https://davidgohel.github.io/ggiraph/&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;con &lt;code&gt;{ggiraph}&lt;/code&gt;&lt;/a&gt; que permita poner el cursor sobre las observaciones para obtener más información.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Feliz cumpleaños, {ggplot2}!</title>
      <link>https://bastianolea.rbind.io/blog/2025-06-11/</link>
      <pubDate>Wed, 11 Jun 2025 00:00:00 +0000</pubDate>
      <guid>https://bastianolea.rbind.io/blog/2025-06-11/</guid>
      <description>&lt;p&gt;Hoy está de cumpleaños el paquete &lt;code&gt;{ggplot2}&lt;/code&gt; para visualización de datos en R! Este paquete es indispensable para explorar el mundo de los datos, ya que su filosofía o gramática está muy bien lograda, y su flexibilidad posibilita crear casi lo que desees, siempre siguiendo principios firmemente sostenidos en un enfoque de ciencia de datos.&lt;/p&gt;&#xA;&lt;p&gt;Se trata de una herramienta que uso día a día, así que con mucho cariño (🤪) le hice un gráfico de mini celebración en 20 líneas 💜&lt;/p&gt;</description>
    </item>
    <item>
      <title>Unir y combinar gráficos `{ggplot2}` con `{patchwork}`</title>
      <link>https://bastianolea.rbind.io/blog/patchwork/</link>
      <pubDate>Sat, 08 Mar 2025 00:00:00 +0000</pubDate>
      <guid>https://bastianolea.rbind.io/blog/patchwork/</guid>
      <description>&lt;p&gt;&#xA;&lt;a href=&#34;https://patchwork.data-imaginist.com/articles/patchwork.html&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;El paquete &lt;code&gt;{patchwork}&lt;/code&gt;&lt;/a&gt; ayuda a &lt;strong&gt;unir y combinar gráficos&lt;/strong&gt; de &lt;code&gt;{ggplot2}&lt;/code&gt;. En esta guía veremos los principios del uso de este paquete, que nos permitirá construir visualizaciones más complejas&lt;/p&gt;&#xA;&lt;div style = &#34;margin-left: -16px;&#34;&gt;&#xA;  &#xA;  &lt;details closed id=&#34;PageTableOfContents&#34;&gt;&#xA;    &lt;summary&gt;&#xA;      &lt;h2 class=&#34;mv0 f5 fw7 ttu tracked dib&#34; style = &#34;margin-left: 6px; font-size: 120%;&#34;&gt;Índice&lt;/h2&gt;&#xA;      &lt;/summary&gt;&#xA;    &lt;div class=&#34;pl2 pr0 mh0&#34; style = &#34;font-size: 90%; margin-top: -8px; margin-left: 16px; margin-bottom: 32px;&#34;&gt;&#xA;    &lt;nav id=&#34;TableOfContents&#34;&gt;&#xA;  &lt;ul&gt;&#xA;    &lt;li&gt;&#xA;      &lt;ul&gt;&#xA;        &lt;li&gt;&lt;a href=&#34;#combinar-dos-gráficos-lado-a-lado&#34;&gt;Combinar dos gráficos lado a lado&lt;/a&gt;&lt;/li&gt;&#xA;        &lt;li&gt;&lt;a href=&#34;#combinar-dos-gráficos-uno-arriba-del-otro&#34;&gt;Combinar dos gráficos uno arriba del otro&lt;/a&gt;&lt;/li&gt;&#xA;        &lt;li&gt;&lt;a href=&#34;#combinar-más-de-dos-gráficos&#34;&gt;Combinar más de dos gráficos&lt;/a&gt;&lt;/li&gt;&#xA;      &lt;/ul&gt;&#xA;    &lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;#poner-un-gráfico-dentro-de-otro&#34;&gt;Poner un gráfico dentro de otro&lt;/a&gt;&lt;/li&gt;&#xA;  &lt;/ul&gt;&#xA;&lt;/nav&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/details&gt;&#xA;  &#xA;&lt;/div&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-r&#34; data-lang=&#34;r&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nf&#34;&gt;library&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;dplyr&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nf&#34;&gt;library&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ggplot2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nf&#34;&gt;library&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;patchwork&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Primero crearemos dos gráficos de muestra, a partir del dataset &lt;code&gt;iris&lt;/code&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Creación y personalización de colores y paletas en R</title>
      <link>https://bastianolea.rbind.io/blog/colores/</link>
      <pubDate>Thu, 06 Mar 2025 00:00:00 +0000</pubDate>
      <guid>https://bastianolea.rbind.io/blog/colores/</guid>
      <description>&lt;p&gt;El uso del color es clave para comunicar, y el ecosistema de R tiene varios trucos convenientes para ayudarnos a usar el color de mejores formas.&lt;/p&gt;&#xA;&lt;p&gt;En R, los colores se escriben como código, y a grandes rasgos pueden ser colores con &lt;strong&gt;nombre&lt;/strong&gt; (por ejemplo, &lt;code&gt;&amp;quot;purple&amp;quot;&lt;/code&gt;), colores &lt;strong&gt;hexadecimales&lt;/strong&gt; (escritos como códigos de al menos 6 dígitos, como &lt;code&gt;#FFFFFF&lt;/code&gt;), o como parte de funciones que producen &lt;strong&gt;paletas&lt;/strong&gt; de colores.&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-r&#34; data-lang=&#34;r&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nf&#34;&gt;library&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;shades&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nf&#34;&gt;library&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;scales&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&#xA;&#xA;&#xA;&#xA;&lt;h2 id=&#34;previsualizar-colores&#34;&gt;Previsualizar colores&#xA;  &lt;a href=&#34;#previsualizar-colores&#34;&gt;&lt;svg class=&#34;anchor-symbol&#34; aria-hidden=&#34;true&#34; height=&#34;26&#34; width=&#34;26&#34; viewBox=&#34;0 0 22 22&#34; xmlns=&#34;http://www.w3.org/2000/svg&#34;&gt;&#xA;      &lt;path d=&#34;M0 0h24v24H0z&#34; fill=&#34;currentColor&#34;&gt;&lt;/path&gt;&#xA;      &lt;path d=&#34;M3.9 12c0-1.71 1.39-3.1 3.1-3.1h4V7H7c-2.76.0-5 2.24-5 5s2.24 5 5 5h4v-1.9H7c-1.71.0-3.1-1.39-3.1-3.1zM8 13h8v-2H8v2zm9-6h-4v1.9h4c1.71.0 3.1 1.39 3.1 3.1s-1.39 3.1-3.1 3.1h-4V17h4c2.76.0 5-2.24 5-5s-2.24-5-5-5z&#34;&gt;&lt;/path&gt;&#xA;    &lt;/svg&gt;&lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;A lo largo de este post usaremos la función &lt;code&gt;swatch()&lt;/code&gt; del paquete &lt;code&gt;{shades}&lt;/code&gt;, que genera un gráfico que presenta el color o la paleta de colores a partir de un vector de colores, lo que nos ayudará a visualizar nuestros colores más fácil. Una alternativa es la función &lt;code&gt;show_col()&lt;/code&gt; de &lt;code&gt;{scales}&lt;/code&gt;, que hace lo mismo.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Graba el proceso de tus visualizaciones de datos con `{camcorder}`</title>
      <link>https://bastianolea.rbind.io/blog/camcorder/</link>
      <pubDate>Sat, 11 Jan 2025 00:00:00 +0000</pubDate>
      <guid>https://bastianolea.rbind.io/blog/camcorder/</guid>
      <description>&lt;p&gt;El &#xA;&lt;a href=&#34;https://github.com/thebioengineer/camcorder&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;paquete de R {camcorder}&lt;/a&gt; te permite ir registrando todos los gráficos que hagas durante una sesión, y al final te entrega una animación que contiene el paso a paso de tu proceso de visualización de datos, desde el gráfico de {ggplot2} inicial hasta el producto final.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img style = &#34;border-radius: 7px; width: 100%; max-width: 400px; display: block; margin: auto;&#34;&#xA;src = &#34;camcorder1.webp&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Solo tienes que instalarlo y activarlo para que todos los gráficos que generes vayan siendo registrados automáticamente:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Web scraping de noticias: avances de fin de año</title>
      <link>https://bastianolea.rbind.io/blog/2024-12-31/</link>
      <pubDate>Tue, 31 Dec 2024 00:00:00 +0000</pubDate>
      <guid>https://bastianolea.rbind.io/blog/2024-12-31/</guid>
      <description>&lt;p&gt;A largo de todo el año 2024 he estado realizando &#xA;&lt;a href=&#34;https://bastianolea.rbind.io/tags/web-scraping/&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;web scraping&lt;/a&gt; de distintas fuentes de noticias digitales de Chile. Casi todos los días ejecuto un script que a su vez se ejecuta decenas de otros scripts, que realizan el scraping diario de noticias. El resultado de estos procesos, día tras día, va aumentando la cantidad total de noticias que he ido recolectando. De vez en cuando, algún sitio cambia, o algo falla, y tengo que corregir manualmente los scripts. Cada cierto tiempo ejecuto versiones alternativas de los scripts para hacer una extracción de datos desde fechas anteriores, aumentando la cantidad total de noticias de fechas pasadas, lo que me permite rellenar vacíos en las obtenciones anteriores de noticias diarias, como también aumentar la cantidad total de noticias con datos desde años antes de que empezara este proyecto.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Aplicando una regresión lineal en la vida diaria: predecir kilómetros por recorrer en bicicleta</title>
      <link>https://bastianolea.rbind.io/blog/regresion_ciclismo/</link>
      <pubDate>Tue, 03 Dec 2024 00:00:00 +0000</pubDate>
      <guid>https://bastianolea.rbind.io/blog/regresion_ciclismo/</guid>
      <description>&lt;p&gt;No soy una persona muy cercana a la estadística, pero el día de hoy por primera vez se me ocurrió aplicar una regresión lineal para responder una pregunta de mi vida cotidiana.&lt;/p&gt;&#xA;&lt;p&gt;Resulta que un compañero del ultraciclismo, el &#xA;&lt;a href=&#34;https://www.instagram.com/aenederrese/&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;destacado ciclista Andrés Arias&lt;/a&gt;, preguntó en su Instagram si alguien podía predecir cuántos kilómetros va a recorrer este 2024 durante el desafío &#xA;&lt;a href=&#34;https://content.rapha.cc/us/en/story/festive500&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Rapha Festive 500&lt;/a&gt;, un desafío del que participamos muchos ciclistas, que consiste en recorrer 500 km en bicicleta entre el 24 y el 31 de diciembre&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>¿Arte? Nubes aleatorias en `{ggplot2}`</title>
      <link>https://bastianolea.rbind.io/blog/ggplot_nubes/</link>
      <pubDate>Fri, 08 Nov 2024 00:00:00 +0000</pubDate>
      <guid>https://bastianolea.rbind.io/blog/ggplot_nubes/</guid>
      <description>&lt;p&gt;Probando un poco de arte generativo en &lt;code&gt;{ggplot2}&lt;/code&gt;. La idea era generar gráficos que parecieran nubes o humo.&lt;/p&gt;&#xA;&lt;p&gt;Tomé el dataframe &lt;code&gt;iris&lt;/code&gt;, configuré algunos elementos aleatorios en el gráfico, le agregué un efecto de desenfoque a los puntos, y luego hice un loop que genera 9 gráficos con parámetros aleatorios.&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-r&#34; data-lang=&#34;r&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nf&#34;&gt;library&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;dplyr&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nf&#34;&gt;library&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;glue&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nf&#34;&gt;library&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ggplot2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nf&#34;&gt;library&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ggfx&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nf&#34;&gt;library&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;purrr&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Partimos con un gráfico base usando los datos de &lt;code&gt;iris&lt;/code&gt;, donde los puntos crecen en base a una variable, y también aumentan su transparencia en la misma medida que aumentan su tamaño. De esta forma, los puntos más grandes son también menos visibles.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
