diff --git a/web_widget_mpld3_chart/README.rst b/web_widget_mpld3_chart/README.rst new file mode 100644 index 000000000..8417878be --- /dev/null +++ b/web_widget_mpld3_chart/README.rst @@ -0,0 +1,124 @@ +====================== +Web Widget mpld3 Chart +====================== + +.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! This file is generated by oca-gen-addon-readme !! + !! changes will be overwritten. !! + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + +.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png + :target: https://odoo-community.org/page/development-status + :alt: Beta +.. |badge2| image:: https://img.shields.io/badge/licence-LGPL--3-blue.png + :target: http://www.gnu.org/licenses/lgpl-3.0-standalone.html + :alt: License: LGPL-3 +.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fweb-lightgray.png?logo=github + :target: https://github.com/OCA/web/tree/13.0/web_widget_mpld3_chart + :alt: OCA/web +.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png + :target: https://translation.odoo-community.org/projects/web-13-0/web-13-0-web_widget_mpld3_chart + :alt: Translate me on Weblate +.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png + :target: https://runbot.odoo-community.org/runbot/162/13.0 + :alt: Try me on Runbot + +|badge1| |badge2| |badge3| |badge4| |badge5| + +This module adds the possibility to insert mpld3 charts into Odoo standard views. +This is an interactive D3js-based viewer which brings matplotlib graphics to the browser. + +If you want to see some samples of mpld3's capabilities follow this `link +`_. + +**Table of contents** + +.. contents:: + :local: + +Installation +============ + +You need to install the python mpld3 library:: + + pip install mpld3 + +Usage +===== + +To insert a mpld3 chart in a view proceed as follows: + +#. Import the required libraries:: + + import matplotlib.pyplot as plt, mpld3 + +#. Declare a text computed field like this:: + + mpld3_chart = fields.Text( + string='Mpld3 Chart', + compute='_compute_mpld3_chart', + ) + +#. In its computed method do:: + + def _compute_mpld3_chart(self): + for rec in self: + # Design your mpld3 figure: + plt.scatter([1, 10], [5, 9]) + figure = plt.figure() + rec.mpld3_chart = mpld3.fig_to_html(figure) + +#. In the view, add something like this wherever you want to display your + mpld3 chart:: + +
+ +
+ +Bug Tracker +=========== + +Bugs are tracked on `GitHub Issues `_. +In case of trouble, please check there if your issue has already been reported. +If you spotted it first, help us smashing it by providing a detailed and welcomed +`feedback `_. + +Do not contact contributors directly about support or help with technical issues. + +Credits +======= + +Authors +~~~~~~~ + +* ForgeFlow + +Contributors +~~~~~~~~~~~~ + +* Jordi Ballester Alomar + +Other credits +~~~~~~~~~~~~~ + +* This module uses the library `mpld3 `__ + which is under the open-source BSD 3-clause "New" or "Revised" License. + Copyright (c) 2013, Jake Vanderplas +* Odoo Community Association (OCA) + +Maintainers +~~~~~~~~~~~ + +This module is maintained by the OCA. + +.. image:: https://odoo-community.org/logo.png + :alt: Odoo Community Association + :target: https://odoo-community.org + +OCA, or the Odoo Community Association, is a nonprofit organization whose +mission is to support the collaborative development of Odoo features and +promote its widespread use. + +This module is part of the `OCA/web `_ project on GitHub. + +You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/web_widget_mpld3_chart/static/description/index.html b/web_widget_mpld3_chart/static/description/index.html new file mode 100644 index 000000000..bd63dce87 --- /dev/null +++ b/web_widget_mpld3_chart/static/description/index.html @@ -0,0 +1,477 @@ + + + + + + +Web Widget mpld3 Chart + + + +
+

Web Widget mpld3 Chart

+ + +

Beta License: LGPL-3 OCA/web Translate me on Weblate Try me on Runbot

+

This module adds the possibility to insert mpld3 charts into Odoo standard views. +This is an interactive D3js-based viewer which brings matplotlib graphics to the browser.

+

If you want to see some samples of mpld3’s capabilities follow this link.

+

Table of contents

+ +
+

Installation

+

You need to install the python mpld3 library:

+
+pip install mpld3
+
+
+
+

Usage

+

To insert a mpld3 chart in a view proceed as follows:

+
    +
  1. Import the required libraries:

    +
    +import matplotlib.pyplot as plt, mpld3
    +
    +
  2. +
  3. Declare a text computed field like this:

    +
    +mpld3_chart = fields.Text(
    +    string='Mpld3 Chart',
    +    compute='_compute_mpld3_chart',
    +)
    +
    +
  4. +
  5. In its computed method do:

    +
    +def _compute_mpld3_chart(self):
    +    for rec in self:
    +        # Design your mpld3 figure:
    +        plt.scatter([1, 10], [5, 9])
    +        figure = plt.figure()
    +        rec.mpld3_chart = mpld3.fig_to_html(figure)
    +
    +
  6. +
  7. In the view, add something like this wherever you want to display your +mpld3 chart:

    +
    +<div>
    +    <field name="mpld3_chart" widget="mpld3_chart" nolabel="1"/>
    +</div>
    +
    +
  8. +
+
+
+

Bug Tracker

+

Bugs are tracked on GitHub Issues. +In case of trouble, please check there if your issue has already been reported. +If you spotted it first, help us smashing it by providing a detailed and welcomed +feedback.

+

Do not contact contributors directly about support or help with technical issues.

+
+
+

Credits

+
+

Authors

+
    +
  • ForgeFlow
  • +
+
+
+

Contributors

+ +
+
+

Other credits

+
    +
  • This module uses the library mpld3 +which is under the open-source BSD 3-clause “New” or “Revised” License. +Copyright (c) 2013, Jake Vanderplas
  • +
  • Odoo Community Association (OCA)
  • +
+
+
+

Maintainers

+

This module is maintained by the OCA.

+Odoo Community Association +

OCA, or the Odoo Community Association, is a nonprofit organization whose +mission is to support the collaborative development of Odoo features and +promote its widespread use.

+

This module is part of the OCA/web project on GitHub.

+

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

+
+
+
+ +