Bokeh es una visualización de datos interactiva de Python. Representa sus tramas usando HTML y JavaScript. Se dirige a los navegadores web modernos para presentaciones que proporcionan una construcción elegante y concisa de gráficos novedosos con interactividad de alto rendimiento.
Bokeh se puede utilizar para visualizar datos del mercado de valores. La visualización se realiza mediante el plotting
módulo. Aquí usaremos los conjuntos de datos de acciones de muestra que nos proporcionó Bokeh.
Descargando el conjunto de datos:
Para descargar los conjuntos de datos de muestra, ejecute el siguiente comando en la línea de comando:
bokeh sampledata
Alternativamente, también podemos ejecutar el siguiente código de Python:
import bokeh bokeh.sampledata.download()
Analizando el conjunto de datos:
En los datos de muestra proporcionados por Bokeh, hay conjuntos de datos de las acciones de las siguientes empresas:
- AAPL que es Apple
- FB que es Facebook
- GOOG que es Google
- IBM, que es International Business Machines
- MSFT que es Microsoft Corporation
Todos estos conjuntos de datos están disponibles como archivos CSV. A continuación se muestra un vistazo al archivo IBM.csv:
Date Open High Low Close Volume Adj Close 01-03-2000 102 105.5 100.06 100.25 10807800 84.48 02-03-2000 100.5 105.44 99.5 103.12 11192900 86.9 03-03-2000 107.25 110 106.06 108 10162800 91.01 06-03-2000 109.94 111 101 103.06 10747400 86.85 07-03-2000 106 107 101.69 103 10035100 86.8
El archivo contiene los datos de stock entre los años 2000 y 2013 con más de 3000 entradas.
Visualización de las acciones:
Trazaremos un gráfico de líneas que seguirá el precio de cierre de las acciones entre los años 2000 y 2013 de las 5 empresas disponibles.
- Importar los módulos requeridos:
- entumecido
- figure, output_file y show de bokeh.plotting
- AAPL, FB, GOOG, IBM y MSFT de bokeh.sampledata.stocks
- Cree una instancia de un objeto de figura con los tipos de título y eje.
- Dé los nombres al eje x y al eje y.
- Trace gráficos de líneas para las 5 empresas.
- Muestra el modelo.
# importing the modules import numpy as np from bokeh.plotting import figure, output_file, show from bokeh.sampledata.stocks import AAPL, FB, GOOG, IBM, MSFT # the file to save the model output_file("gfg.html") # instantiating the figure object graph = figure(x_axis_type = "datetime", title = "Stock Closing Prices") # name of the x-axis graph.xaxis.axis_label = 'Date' # name of the y-axis graph.yaxis.axis_label = 'Price (in USD)' # plotting the line graph for AAPL x_axis_coordinates = np.array(AAPL['date'], dtype = np.datetime64) y_axis_coordinates = AAPL['adj_close'] color = "lightblue" legend_label = 'AAPL' graph.line(x_axis_coordinates, y_axis_coordinates, color = color, legend_label = legend_label) # plotting the line graph for FB x_axis_coordinates = np.array(FB['date'], dtype = np.datetime64) y_axis_coordinates = FB['adj_close'] color = "black" legend_label = 'FB' graph.line(x_axis_coordinates, y_axis_coordinates, color = color, legend_label = legend_label) # plotting the line graph for GOOG x_axis_coordinates = np.array(GOOG['date'], dtype = np.datetime64) y_axis_coordinates = GOOG['adj_close'] color = "orange" legend_label = 'GOOG' graph.line(x_axis_coordinates, y_axis_coordinates, color = color, legend_label = legend_label) # plotting the line graph for IBM x_axis_coordinates = np.array(IBM['date'], dtype = np.datetime64) y_axis_coordinates = IBM['adj_close'] color = "darkblue" legend_label = 'IBM' graph.line(x_axis_coordinates, y_axis_coordinates, color = color, legend_label = legend_label) # plotting the line graph for MSFT x_axis_coordinates = np.array(MSFT['date'], dtype = np.datetime64) y_axis_coordinates = MSFT['adj_close'] color = "yellow" legend_label = 'MSFT' graph.line(x_axis_coordinates, y_axis_coordinates, color = color, legend_label = legend_label) # relocating the legend table to # avoid abstruction of the graph graph.legend.location = "top_left" # displaying the model show(graph)
Producción :