npm 中文文档 npm 中文文档
指南
npmjs.com (opens new window)
指南
npmjs.com (opens new window)
  • 快速入门

    • npm 是什么?
    • npm 安装和更新
    • npm 防止权限错误
    • npm package.json 文件
    • npm 安装包
    • npm 更新包
    • npm 卸载包
    • npm 创建 Node.js 模块
    • npm 发布和更新包
    • npm 使用语义化版本
    • npm 使用 Dist-tags 标记包
    • npm 包和模块的了解
  • 命令行
  • 配置 npm

Plotly.js is a standalone Javascript data visualization library, and it also powers the Python and R modules named plotly in those respective ecosystems (referred to as Plotly.py and Plotly.R ).

Plotly.js can be used to produce dozens of chart types and visualizations, including statistical charts, 3D graphs, scientific charts, SVG and tile maps, financial charts and more.

Contact us for Plotly.js consulting, dashboard development, application integration, and feature additions.

Table of contents


Load as a node module
Load via script tag
Bundles
Alternative ways to load and build plotly.js
Documentation
Bugs and feature requests
Contributing
Notable contributors
Copyright and license
Community

Load as a node module


Install a ready-to-use distributed bundle

  1. ``` shell
  2. npm i --save plotly.js-dist-min
  3. ```

and use import or require in node.js

  1. ``` js
  2. // ES6 module
  3. import Plotly from 'plotly.js-dist-min'

  4. // CommonJS
  5. var Plotly = require('plotly.js-dist-min')
  6. ```

You may also consider using plotly.js-dist if you prefer using an unminified package.

Load via script tag


The script HTML element


In the examples below Plotly object is added to the window scope by script. The newPlot method is then used to draw an interactive figure as described by data and layout into the desired div here named gd. As demonstrated in the example above basic knowledge of html and JSON syntax is enough to get started i.e. with/without JavaScript! To learn and build more with plotly.js please visit plotly.js documentation.


  1. ``` html
  2. <head>
  3.     <script src="https://cdn.plot.ly/plotly-2.20.0.min.js" charset="utf-8"></script>
  4. </head>
  5. <body>
  6.     <div id="gd"></div>
  7.     <script>
  8.         Plotly.newPlot("gd", /* JSON object */ {
  9.             "data": [{ "y": [1, 2, 3] }],
  10.             "layout": { "width": 600, "height": 400}
  11.         })
  12.     </script>
  13. </body>
  14. ```

Alternatively you may consider using native ES6 import in the script tag.

  1. ``` html
  2. <script type="module">
  3.     import "https://cdn.plot.ly/plotly-2.20.0.min.js"
  4.     Plotly.newPlot("gd", [{ y: [1, 2, 3] }])
  5. </script>
  6. ```

Fastly supports Plotly.js with free CDN service. Read more at https://www.fastly.com/open-source.

Un-minified versions are also available on CDN


While non-minified source files may contain characters outside UTF-8, it is recommended that you specify the charset when loading those bundles.

  1. ``` html
  2. <script src="https://cdn.plot.ly/plotly-2.20.0.js" charset="utf-8"></script>
  3. ```

Please note that as of v2 the "plotly-latest" outputs (e.g. https://cdn.plot.ly/plotly-latest.min.js ) will no longer be updated on the CDN, and will stay at the last v1 patch v1.58.5. Therefore, to use the CDN with plotly.js v2 and higher, you must specify an exact plotly.js version.


MathJax


You could load either version two or version three of MathJax files, for example:

  1. ``` html
  2. <script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js?config=TeX-AMS-MML_SVG.js"></script>
  3. ```

  1. ``` html
  2. <script src="https://cdn.jsdelivr.net/npm/mathjax@3.2.2/es5/tex-svg.js"></script>
  3. ```

When using MathJax version 3, it is also possible to use chtml output on the other parts of the page in addition to svg output for the plotly graph. Please refer to devtools/test_dashboard/index-mathjax3chtml.html to see an example.


Bundles


There are two kinds of plotly.js bundles:

Complete and partial official bundles that are distributed to npm and the CDN, described in the dist README.
Custom bundles you can create yourself to optimize the size of bundle depending on your needs. Please visit CUSTOM_BUNDLE for more information.

Alternative ways to load and build plotly.js


If your library needs to bundle or directly load plotly.js/lib/index.js or parts of its modules similar to index-basic in some other way than via an official or a custom bundle, or in case you want to tweak the default build configurations, then please visit BUILDING.md.

Documentation


Official plotly.js documentation is hosted at https://plotly.com/javascript.

These pages are generated by the Plotly graphing-library-docs repo built with Jekyll and publicly hosted on GitHub Pages. For more info about contributing to Plotly documentation, please read through contributing guidelines.

Bugs and feature requests


Have a bug or a feature request? Please open a Github issue keeping in mind the issue guidelines. You may also want to read about how changes get made to Plotly.js

Contributing


Please read through our contributing guidelines. Included are directions for opening issues, using plotly.js in your project and notes on development.

Notable contributors


Plotly.js is at the core of a large and dynamic ecosystem with many contributors who file issues, reproduce bugs, suggest improvements, write code in this repo (and other upstream or downstream ones) and help users in the Plotly community forum. The following people deserve special recognition for their outsized contributions to this ecosystem:

GitHub Twitter Status
:--- :--- :---
Alex C. Johnson @alexcjohnson
Mojtaba Samimi @archmoj @solarchvision
Antoine Roy-Gobeil @antoinerg
Nicolas Kruchten @nicolaskruchten @nicolaskruchten
Jon Mease @jonmmease @jonmmease
Étienne Tétreault-Pinard @etpinard @etpinard
Mikola Lysenko @mikolalysenko @MikolaLysenko
Ricky Reusser @rreusser @rickyreusser
Dmitry Yv. @dy @DimaYv
Robert Monfera @monfera @monfera
Robert Möstl @rmoestl @rmoestl
Nicolas Riesco @n-riesco
Miklós Tusz @mdtusz @mdtusz
Chelsea Douglas @cldougl
Ben Postlethwaite @bpostlethwaite
Chris Parmer @chriddyp
Alex Vados @alexander-daniel

Copyright and license


Code and documentation copyright 2021 Plotly, Inc.

Code released under the MIT license.

Versioning


This project is maintained under the Semantic Versioning guidelines.

See the Releases section of our GitHub project for changelogs for each release version of plotly.js.

Community


Follow @plotlygraphs on Twitter for the latest Plotly news.
Implementation help may be found on community.plot.com (tagged plotly-js ) or on Stack Overflow (tagged plotly ).
Developers should use the keyword plotly on packages which modify or add to the functionality of plotly.js when distributing through npm.
Last Updated: 2023-06-04 08:59:14