Creación de Gráficos con GooPyCharts

Introducción:

Hola amigos de Internet, les doy la bienvenida a Mi Diario Python, el mejor blog en español para Aprender Python.
En este articulo veremos como utilizar "GooPyCharts". ¿No sabes que demonios es eso? No te preocupes, veremos como instalarlo y utilizarlo. Así que prepárate, abre tu Jupyter Notebook y a empezar se a dicho.

Imagen relacionada

GooPyCharts:

GooPyChart es la API de Google Charts para Python. Y se suele utilizar como alternativa de Matplotlib.
GooPyCharts nos permite generar gráficos muy limpios y de manera muy sencilla.
Nos permite generar gráficos de barras, lineas, histogramas y de dispersión. 
Cuenta con métodos para guardar los datos en archivos CSV, HTML o PNG. Y una excelente integración con Jupyter.

Instalación:

La instalación es muy sencillo. Solo debemos ingresar el siguiente comando en nuestra consola o terminal:
pip install gpchars
O puedes descargar los archivos en el repositorio de GooPyCharts: https://github.com/Dfenestrator/GooPyCharts.

Gráficos de Lineas:

Los gráficos de lineas son un buen ejemplo para empezar. Vemos como hacerlos:
# Importamos el objeto "figure"
from gpcharts import figure

# Creamos la instancia pasando como argumento
# el nombre del gráfico
figura = figure("Figura")

# Graficamos los datos escogidos
figura.plot([8,7,6,5,4])
Un gráfico muy bonito ¿No creen? Como pueden observar a diferencia de Matplotlib, el cual nos da como resultado una imagen, GooPycharts utiliza los servicios de Google Charts y nos devuelve una gráfico muy interactivo. Y nos devuelve dos botones con las opciones de descargar en dos distintos formatos. 
Muy fácil ¿No creen?.

Al declarar la instancia podemos agregar argumentos que nos permiten personalizar y configurar el gráfico, vemos un ejemplo:

# Importamos el objeto "figure"
from gpcharts import figure

# Creamos la instancia declarando nuestros argumentos
figura = figure(title="Gráfico", # Titulo
                ylabel="Etiqueta Y", # Etiqueta del eje Y
                xlabel="Etiqueta X", # Etiqueta del eje X
                width=500, # Anchura del gráfico
                height=300, # Altura del gráfico
               )

# Graficamos los datos escogidos
figura.plot([8,7,6,5,4])

Bueno, como pueden observar, los argumentos son muy predecibles. Tenemos el titulo, las etiquetas del eje X e Y, y las dimensiones del gráfico (más pequeño que el anterior).

Gráfico de Dispersión:

Para crear nuestros gráficos de dispersión utilizaremos el método scatter(). La sintaxis es la misma, veamos un ejemplo:
# Importamos el objeto "figure"
from gpcharts import figure

dispersion = figure(title="Gráfico de Dispersión",
                    width=500,
                    height=300,
                   )

dispersion.scatter([5,6,7,4,5,2,8,9,1,7], trendline=True)
Como pueden observar, es muy fácil y sencillo. El argumento trendline estar en True, nos mostrara la linea de tendencia.

Histograma:

GooPyCharts nos permite la creación de histogramas. Todo lo que debemos hacer es utilizar el método hist el cual toma una lista de entradas. Veamos un pequeño ejemplo:
# Importamos el objeto "figure"
from gpcharts import figure

histograma = figure('Distribution',xlabel='value')
histograma.hist([1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,3,3,3,3,4,4,5,6,7,8,8,8,8,8,9,9,9,10,11,12,13,13,13,13,14])

Gráfico de Barras:

Ahora vamos a crear un simple gráfico de barras horizontal:
# Importamos el objeto "figure"
from gpcharts import figure

barras = figure('Porcentaje de consumo de Alcohol')
barras.bar(['Porcentaje','Valor 1','Valor 2', 'Valor 3'],['Valor',45,50, 40])

Más ejemplos:

DateTime Graph

fig3 = figure()
fig3.title = 'Weather over Days'
fig3.ylabel = 'Temperature'
fig3.height = 800
fig3.width = 1000

xVals = ['Dates','2016-03-20','2016-03-21','2016-03-25','2016-04-01']
yVals = [['Shakuras','Korhal','Aiur'],[10,30,40],[12,28,41],[15,34,38],[8,33,47]]
fig3.plot(xVals,yVals)
Índice

    Line Graph with Two Lines

    fig2 = figure(title='Two lines',xlabel='Days',ylabel='Count',height=600,width=600)
    xVals = ['Mon','Tues','Wed','Thurs','Fri']
    yVals = [[5,4],[8,7],[4,8],[10,10],[3,12]]
    fig2.plot(xVals,yVals)
    

    ¿Que tal? Interesante ¿No?. Estoy seguro que igual que a mi, esto te servirá de mucho.

    ¿Alguna duda? No dudes en dejar tu comentario.

    Mi nombre es Luis, y fue un placer compartir mis conocimientos con todos ustedes :D.

    1. Unknown dice:

      Hola!!
      Gracias! Excelente artículo. Muy útil.
      Me gustaría dejarte mi inquietud y e si esbque tienes ejemplos de esto combinado con datos leídos desde una base de datos y como insertar el gráfico en un correo electrónico y enviar este.

      Agradecido,
      Saludos
      Victor

    Deja una respuesta

    Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

    Subir

    Te has suscrito correctamente al boletín

    Se produjo un error al intentar enviar tu solicitud. Inténtalo de nuevo.

    Mi Diario Python will use the information you provide on this form to be in touch with you and to provide updates and marketing.