Python Bokeh: visualización de datos de stock

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 plottingmó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.

  1. Importar los módulos requeridos:
    • entumecido
    • figure, output_file y show de bokeh.plotting
    • AAPL, FB, GOOG, IBM y MSFT de bokeh.sampledata.stocks
  2. Cree una instancia de un objeto de figura con los tipos de título y eje.
  3. Dé los nombres al eje x y al eje y.
  4. Trace gráficos de líneas para las 5 empresas.
  5. 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 :

Publicación traducida automáticamente

Artículo escrito por Yash_R y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

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