- Category
- Developer Tools
- Rank
- No. 59Tools index
Previous survey · No. 64 ·
- Pricing
- Open Source
- Type
- TOOL
- Builder
- apache
- GitHub
- 67.3k stars
- Latest release
- 6.1.0
- Date
About
Apache's open-source charting and data visualization library for the browser, with SVG/Canvas rendering and a wide range of chart types.
What it does
ECharts turns structured chart options into interactive visual presentations. Developers compose series, coordinate systems, controls, datasets, and rendering features, while a registration system supports complete or selectively assembled builds.
Why it's ranked here
A strong choice for applications needing substantial visualization breadth without abandoning package-level control. It combines many chart families, interaction components, accessibility support, locale resources, TypeScript declarations, and modular entry points within one library.
What's good
The package exposes charts, components, features, renderers, themes, locales, extensions, and declaration files through explicit exports. Full, common, simple, and modular surfaces let teams balance convenience against control. Built-in ARIA, zoom, brush, legends, tooltips, transforms, and multiple coordinate systems cover practical interactive work.
Tradeoffs
Modular assembly makes consumers responsible for registering every required renderer, chart, component, and feature. The simpler distribution supports only line, bar, and pie charts with a limited component set. Three-dimensional plots, globe visualization, WebGL acceleration, word clouds, liquid fill, and statistical tooling live in separate extensions.
How to use it well
Use it for frontend products that need configurable, interactive charts and can keep visualization options alongside application code. Start with a bundled surface for broad requirements, then adopt modular imports when tighter composition matters. Keep data preparation, statistical analysis, mapping services, and application infrastructure in adjacent tools.
Technical notes+
package.json defines an ESM package with CommonJS, ESM, minified CDN, SSR client, extension, theme, locale, declaration, chart, component, feature, and renderer exports. src/extension.ts implements idempotent extension installation through use(), exposing registration hooks for processors, actions, coordinate systems, layouts, visuals, transforms, painters, models, and views. src/echarts.ts installs CanvasRenderer, DatasetComponent, and label layout by default. src/echarts.all.ts registers both renderers plus the complete chart and component sets, while src/echarts.common.ts and src/echarts.simple.ts provide narrower bundles. index.d.ts retains a deprecated UMD-oriented TypeScript entry. i18n/langAR.js, i18n/langCS.js, i18n/langDE.js, i18n/langEL.js, and i18n/langEN.js register locale text through AMD, CommonJS, or browser globals.
Observed
- License
- Apache License 2.0
- Primary implementation
- JavaScript library with TypeScript source and generated type declarations
- Install surface
- Available through npm, jsDelivr CDN, or an official website download
- Interface
- Browser charting library with ESM, CommonJS, browser-global, and typed package entry points
- Rendering platform
- Browser rendering through Canvas and SVG
- Package structure
- Exports modular charts, components, features, renderers, themes, locales, extensions, and SSR client support
- Testing structure
- Repository scripts include Jest unit tests, visual tests, and TypeScript declaration tests
Read from README.md, package.json, src/echarts.ts, src/global.d.ts, src/extension.ts, src/echarts.all.ts, src/echarts.blank.ts, src/echarts.common.ts, src/echarts.simple.ts, index.d.ts, i18n/langAR.js, i18n/langCS.js, i18n/langDE.js, i18n/langEL.js, i18n/langEN.js.
What it can do
Create interactive bar charts
Numerical data arrays → Interactive bar chart visualization
Generate line charts with multiple series
Time series or sequential data → Multi-line chart with hover interactions
Render pie charts with custom styling
Categorical data with values → Styled pie chart with labels and legends
Create scatter plot visualizations
X-Y coordinate data points → Interactive scatter plot chart
Generate heatmap visualizations
Matrix data with intensity values → Color-coded heatmap chart
Export charts as SVG files
Rendered chart instance → SVG image file
Export charts as PNG images
Rendered chart instance → PNG image file
Create geographic map visualizations
Geographic data and coordinates → Interactive map with data overlays
Tags
Tech Stack
Comments (0)
No comments yet
Editorially curated, with community endorsements as a secondary signal. Corrections welcome.
