{"id":96,"date":"2017-05-13T00:34:12","date_gmt":"2017-05-13T00:34:12","guid":{"rendered":"http:\/\/blog.espol.edu.ec\/casaresfelix\/?p=96"},"modified":"2017-05-13T00:34:49","modified_gmt":"2017-05-13T00:34:49","slug":"grafico-dinamico-r-hc","status":"publish","type":"post","link":"https:\/\/blog.espol.edu.ec\/casaresfelix\/2017\/05\/13\/grafico-dinamico-r-hc\/","title":{"rendered":"\u00a1Un gr\u00e1fico fant\u00e1stico para compartirlo!"},"content":{"rendered":"<p style=\"text-align: justify\">Los datos\u00a0no tiene porqu\u00e9 ser aburridos ni planos.<!--more--><\/p>\n<p style=\"text-align: justify\">En ese sentido, escribo este post como una introducci\u00f3n a la construcci\u00f3n de gr\u00e1ficos, compartibles y \u00a0din\u00e1micos en R (\u00a1y fant\u00e1sticos obviamente!).<\/p>\n<p style=\"text-align: justify\">Para que puedas sacarle provecho a lo que vas a leer, te sugiero tener instalado RStudio, copiar y pegar los comandos en color tal como te lo voy a mostrar, y las siguientes librer\u00edas:<\/p>\n<p style=\"text-align: justify\"><em>Copia y pega estas lineas en el inicio de tu script de RStudio y ejec\u00fatalo uno por uno; te sugiero reemplaces las comillas dobles \u00a0\" \", usando tu teclado.<\/em><\/p>\n<blockquote><p>install.packages(\"highcharter\")<br \/>\ninstall.packages(\"openxlsx\")<br \/>\ninstall.packages(\"htmlwidgets\")<br \/>\nlibrary(highcharter)<br \/>\nlibrary(highcharter)<br \/>\nlibrary(htmlwidgets)<\/p><\/blockquote>\n<p style=\"text-align: justify\">La primera librer\u00eda es una de las m\u00e1s utilizadas para la construcci\u00f3n de gr\u00e1ficos din\u00e1micos(aunque de licencia pagada); si bien es cierto, esta librer\u00eda ayuda a crear gr\u00e1ficos grandiosos, existen por lo menos dos formas de construir un gr\u00e1fico din\u00e1mico: con c\u00f3digo y con la funci\u00f3n hchart(). Te voy a ense\u00f1ar con c\u00f3digo debido a que considero que es la forma m\u00e1s pr\u00e1ctica de entender lo que puedas agregar manualmente en tus gr\u00e1ficos.<\/p>\n<p style=\"text-align: justify\">La librer\u00eda openxlsx permite cargar bases de datos de excel a R de una manera r\u00e1pida y sencilla, mientra que la librer\u00eda htmlwidgets permite guardar el gr\u00e1fico en formato HTML para que lo puedas compartir por correo, en redes sociales, por medio de un USB, o como desees compartirlo.<\/p>\n<p style=\"text-align: justify\">Luego de instalar y llamar a las librer\u00edas, tienes que cargar tu base de datos a RStudio. <span style=\"text-decoration: underline\"><a href=\"http:\/\/www.betametrica.com.ec\/wp-content\/uploads\/2017\/01\/conectR_excel.xlsx\"><strong>Descarga la base de ejemplo aqu\u00ed<\/strong> <\/a><\/span>y luego gu\u00e1rdala en alguna carpeta (mis documentos por ejemplo); luego fija el directorio en RStudio as\u00ed:<\/p>\n<blockquote>\n<p style=\"text-align: justify\">setwd(\"C:\\\\Users\\\\usuario\\\\Desktop\\\\la carpeta donde est\u00e1 el archivo\")<\/p>\n<\/blockquote>\n<p style=\"text-align: justify\">Si tienes inconvenientes en setear el directorio, siempre puedes usar el comando file.choose() y luego navegar por la ventana emergente hasta hallar la carpeta y el archivo que descargaste; luego das click en abrir y copias el directorio que te devuelve la consola de RStudio, sin el nombre del archivo, en mi caso ser\u00eda as\u00ed:<\/p>\n<blockquote>\n<p style=\"text-align: justify\">setwd(\"C:\\\\Users\\\\usuario\\\\Desktop\\\\conectar R\")<\/p>\n<\/blockquote>\n<p style=\"text-align: justify\">Nota que conectar R es el nombre de mi carpeta en donde guard\u00e9 el archivo descargado; carpeta que se encuentre en el escritorio de\u00a0la PC.<\/p>\n<p style=\"text-align: justify\">Habiendo seteado el directorio,\u00a0el siguiente paso es cargar la base con nombre conectR_excel.xslx; si tienes dudas sobre como hacerlo, puedes ver el post de <strong><a href=\"http:\/\/www.betametrica.com.ec\/blog\/importar-excel-a-r\/\">BETAM\u00c9TRICA aqu\u00ed<\/a><\/strong><\/p>\n<blockquote>\n<p style=\"text-align: justify\">data<\/p>\n<\/blockquote>\n<p style=\"text-align: justify\">Data es el nombre del objeto (dataframe) de R en donde se carg\u00f3 la base de datos de excel; puedes darle cualquier nombre si deseas por lo que no es necesario que se llame siempre data.<\/p>\n<p style=\"text-align: justify\"><strong>Generando el gr\u00e1fico.-<\/strong><\/p>\n<p style=\"text-align: justify\">En realidad el c\u00f3digo es sencillo y se lo verbaliza de la siguiente manera:<\/p>\n<p style=\"text-align: justify\">Guarda el gr\u00e1fico en un objeto \"m\" y contin\u00faa (%&gt;% significa contin\u00faa); coloca un encabezado y contin\u00faa;coloca un subtitulo y contin\u00faa; con dos decimales y contin\u00faa; \u00a0de la base DATA ,utiliza la variable fecha corte como fecha (serie de tiempo) en el eje de la x , la variable cuasidinero en la y, con nombre \"cuasidinero\", y contin\u00faa;\u00a0utiliza la variable fecha corte como fecha (serie de tiempo) en el eje de la x , la variable oferta monetaria (ofe_mon) en la y, con nombre \"Oferta Monetaria\", y contin\u00faa.<\/p>\n<p>Este es el c\u00f3digo.<\/p>\n<blockquote><p>m&lt;-highchart(type = \"stock\") %&gt;%<br \/>\nhc_title(text = \"Evoluci\u00f3n de la Oferta Monetaria y Cuasidinero\") %&gt;%<br \/>\nhc_subtitle(text = \"Fuente: Banco Central del Ecuador - Elaboraci\u00f3n: BETAM\u00c9TRICA S.A\")%&gt;%<br \/>\nhc_tooltip(valueDecimals = 2) %&gt;%<br \/>\nhc_add_series_times_values(data$fecha_corte,<br \/>\ndata$cuasidinero,<br \/>\nname = \"Cuasidinero\") %&gt;%<br \/>\nhc_add_series_times_values(data$fecha_corte,<br \/>\ndata$ofe_mon,<br \/>\nname = \"Oferta Monetaria\")<\/p><\/blockquote>\n<p>Cuando ejecutes el c\u00f3digo, seguro no te va aparecer el gr\u00e1fico puesto que se guardo toda la informaci\u00f3n en un objeto que se llama \"m\". Para visualizarlo, escribe m como siguiente linea y ejecuta el c\u00f3digo. Tu gr\u00e1fico se ver\u00e1 algo como esto:<\/p>\n<div id=\"attachment_728\" style=\"width: 1378px\" class=\"wp-caption aligncenter\"><a href=\"http:\/\/www.betametrica.com.ec\/wp-content\/uploads\/2017\/02\/m.html\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-728\" class=\" size-full wp-image-728 aligncenter\" src=\"https:\/\/casaresfelixdotcom.files.wordpress.com\/2017\/02\/hc.jpg\" alt=\"hc\" width=\"1368\" height=\"680\" \/><\/a><p id=\"caption-attachment-728\" class=\"wp-caption-text\">Clic en la imagen para manipular el gr\u00e1fico<\/p><\/div>\n<p style=\"text-align: justify\">El siguiente paso es hacer que ese gr\u00e1fico se guarde como un archivo manipulable y compartible, por lo que es necesario guardarlo con formato html y para esto utilizaremos la librer\u00eda htmlwidgets con esta sencilla linea:<\/p>\n<blockquote>\n<p style=\"text-align: justify\">saveWidget(m, file=\"m.html\")<\/p>\n<\/blockquote>\n<p style=\"text-align: justify\">Recuerda m es el objeto donde est\u00e1 guardado tu gr\u00e1fico por lo tanto tienes que decirle a la funci\u00f3n saveWidget el nombre de tu archivo y luego el formato con el que quieres guardarlo.<\/p>\n<p style=\"text-align: justify\">\u00bfD\u00f3nde se guardo?<\/p>\n<p style=\"text-align: justify\">Busca la carpeta que fijaste al inicio de este post, en mi caso y por simplicidad, en el escritorio; recuerda que el nombre del archivo (gr\u00e1fico) es <strong>m.html.<\/strong><\/p>\n<p style=\"text-align: justify\">Como puedes observar, aunque parezca complicado, con un poco de concentraci\u00f3n puedes generar este tipo de gr\u00e1ficos y compartirlos con tus amistades (o sorprender a tus jefes). No olvides copiar y pegar los textos en color, en el orden que aparecen y ejecutarlos paso a paso.<\/p>\n<hr \/>\n<p style=\"text-align: justify\">Si te gust\u00f3 este post, comp\u00e1rtelo y s\u00edgueme en:<\/p>\n<p style=\"text-align: justify\"><a href=\"https:\/\/www.facebook.com\/CasaresFelix\/\">Facebook<\/a><\/p>\n<p style=\"text-align: justify\"><a href=\"https:\/\/twitter.com\/CasaresFelix\">Twitter<\/a><\/p>\n<p style=\"text-align: justify\"><a href=\"https:\/\/ec.linkedin.com\/in\/casaresfelix\">LinkedIn<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Los datos\u00a0no tiene porqu\u00e9 ser aburridos ni planos.<\/p>\n","protected":false},"author":10866,"featured_media":97,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1688],"tags":[1418578,1688,1418582,1418576,1418570,1418580,1418579,1418581],"class_list":["post-96","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-estadistica","tag-ciencia-de-datos","tag-estadistica","tag-estadistica-con-r","tag-estadistica-ecuador","tag-felix-casares","tag-graficos-con-r","tag-graficos-dinamicos-con-r","tag-programacion-con-r"],"_links":{"self":[{"href":"https:\/\/blog.espol.edu.ec\/casaresfelix\/wp-json\/wp\/v2\/posts\/96","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.espol.edu.ec\/casaresfelix\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.espol.edu.ec\/casaresfelix\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/casaresfelix\/wp-json\/wp\/v2\/users\/10866"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/casaresfelix\/wp-json\/wp\/v2\/comments?post=96"}],"version-history":[{"count":2,"href":"https:\/\/blog.espol.edu.ec\/casaresfelix\/wp-json\/wp\/v2\/posts\/96\/revisions"}],"predecessor-version":[{"id":99,"href":"https:\/\/blog.espol.edu.ec\/casaresfelix\/wp-json\/wp\/v2\/posts\/96\/revisions\/99"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/casaresfelix\/wp-json\/wp\/v2\/media\/97"}],"wp:attachment":[{"href":"https:\/\/blog.espol.edu.ec\/casaresfelix\/wp-json\/wp\/v2\/media?parent=96"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/casaresfelix\/wp-json\/wp\/v2\/categories?post=96"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/casaresfelix\/wp-json\/wp\/v2\/tags?post=96"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}