OdooWiki OCA HUB

Web Widget Bokeh Chart

web_widget_bokeh_chart folder_open OCA/web open_in_new
Hidden Licencia: LGPL-3

Este módulo añade la posibilidad de insertar gráficos Bokeh en las vistas estándar de Odoo.

Bokeh es una librería de visualización interactiva de Python orientada a navegadores web modernos para su presentación. Su objetivo es proporcionar una construcción elegante y concisa de gráficos exploratorios básicos y personalizados avanzados al estilo de D3.js, pero también ofrecer esta capacidad con interactividad de alto rendimiento sobre conjuntos de datos muy grandes o en streaming. Bokeh puede ayudar a cualquiera que desee crear de forma rápida y sencilla gráficos interactivos, dashboards y aplicaciones de datos.

Si quieres ver algunos ejemplos de las capacidades de bokeh, sigue este enlace.

Traducción automática al español (DeepSeek) de la descripción original de OCA, que está en inglés.

auto_awesome Qué hace este módulo

Generado por IA a partir del código · Odoo 19.0

Añade dos nuevos widgets de campo que permiten a los desarrolladores mostrar gráficos interactivos de Bokeh dentro de las vistas estándar de Odoo. El gráfico se renderiza a partir de los datos almacenados en un campo, por lo que los usuarios ven un gráfico en vivo en lugar de texto plano.

Esto es un bloque de construcción técnico más que una característica de negocio. Registra dos nuevos tipos de campo que se pueden usar al construir pantallas de Odoo: bokeh_chart y bokeh_chart_json.

Cuando un campo usa uno de estos widgets, el valor almacenado en el registro se lee como datos de gráfico y las librerías JavaScript de Bokeh se cargan automáticamente en el backend. El widget entonces dibuja el gráfico dentro del formulario o vista donde aparece el campo.

  • bokeh_chart espera que el contenido del campo sea texto que contenga la definición del gráfico, incluyendo el contenedor HTML del gráfico y el script que lo dibuja.
  • bokeh_chart_json espera que el contenido del campo sea un valor estructurado con las mismas piezas (contenedor y script).

El gráfico se vuelve a dibujar cuando el registro se guarda o se actualiza, por lo que se mantiene sincronizado con los datos almacenados. No se añaden menús, informes, correos electrónicos, acciones programadas ni reglas de negocio, y no se definen modelos de base de datos. Solo extiende el sistema de campos del cliente web, por lo que está pensado para ser usado por otros módulos o desarrollos personalizados que necesiten mostrar visualizaciones de Bokeh a los usuarios.

Depende de

web

Texto generado por IA (DeepSeek) al leer el código de la versión 19.0 en GitHub; puede contener errores, así que verifícalo en el código antes de decidir. Ver el código en GitHub

Disponibilidad por versión

Revisado: 2026-11-03
Confirmado (verificado en repositorio y rama) Estimado (sin verificar) Sin información

Estado de confirmación: 8 confirmadas, 1 sin información de 9 versiones.

terminal Instalación y uso

Documentación de OCA · Odoo 19.0

Necesitas instalar la librería python bokeh:

pip3 install bokeh==3.1.1

Para insertar un gráfico de Bokeh en una vista, proceda de la siguiente manera:

Usando un campo Char

  • Declare un campo de texto calculado como este: bokeh_chart = fields.Text( string='Bokeh Chart', compute='_compute_bokeh_chart', )
  • En la parte superior del módulo añada las siguientes importaciones: from bokeh.plotting import figure from bokeh.embed import components import json
  • En su método calculado haga: def _compute_bokeh_chart(self): for rec in self: # Design your bokeh figure: p = figure() line = p.line([0, 2], [1, 8], line_width=5) # (...) # fill the record field with both markup and the script of a chart. script, div = components(p, wrap_script=False) rec.bokeh_chart = json.dumps({"div": div, "script": script})
  • En la vista, añada algo como esto donde quiera que desee mostrar su gráfico de Bokeh:

Usando un campo Json

  • Declare un campo json calculado como este: bokeh_chart = fields.Json( string='Bokeh Chart', compute='_compute_bokeh_chart', )
  • En la parte superior del módulo añada las siguientes importaciones: from bokeh.plotting import figure from bokeh.embed import components
  • En su método calculado haga: def _compute_bokeh_chart(self): for rec in self: # Design your bokeh figure: p = figure() line = p.line([0, 2], [1, 8], line_width=5) # (...) # fill the record field with both markup and the script of a chart. script, div = components(p, wrap_script=False) rec.bokeh_chart = {"div": div, "script": script}
  • En la vista, añada algo como esto donde quiera que desee mostrar su gráfico de Bokeh: <field name="bokeh_chart" widget="bokeh_chart_json

Traducción automática al español (DeepSeek) de la documentación original de OCA; los comandos y el código no se traducen. Sin información verificada en OCA: Configuración.

info

Datos importados de GitHub: esta ficha refleja la última revisión del catálogo, no una consulta en directo. Verifica siempre en la documentación del módulo y en staging antes de instalar en producción.