[HN Gopher] Apache ECharts 6
___________________________________________________________________
Apache ECharts 6
Author : makepanic
Score : 244 points
Date : 2025-08-05 06:33 UTC (16 hours ago)
(HTM) web link (echarts.apache.org)
(TXT) w3m dump (echarts.apache.org)
| dev_l1x_be wrote:
| Echarts is the best charting library when you need a full fledge
| solution. It is worth to know that you can reduce the bundle size
| with this:
|
| https://echarts.apache.org/en/builder.html
| makepanic wrote:
| If imported, using a bundler, one can also partially import
| features and install them when needed:
|
| https://apache.github.io/echarts-handbook/en/basics/import/#...
| elric wrote:
| Their new chord chart is easily the clearest chord chart I've
| seen. Tooltips with directional arrows, clear gradients.
| tnolet wrote:
| Anyone ever tried switching from Highcharts to ECharts?
| gerenuk wrote:
| We did for ContentStudio.io, in fact it's my go to library for
| every project that involves visualization.
|
| No regrets and we are very happy with it.
|
| In another project, we started with nivo.rocks and eventually
| migrated everything to echarts. (Usermaven)
| Onavo wrote:
| Are there any good react wrappers for it?
| kakadu wrote:
| While I like echarts I have found it somewhat challenging to
| extend their functionality.
|
| I wanted a Gantt chart and while I did achieve what I wanted it
| wasn't without having to delve into the their source and putting
| log statements everywhere.
|
| I happen to be using ant design and I've had the same issues
| there.
|
| Its a bit all over the place and the translations are not great,
| but i will stick with it.
| infecto wrote:
| Some parts of the api are a bit confusing especially with more
| recent version upgrades but I still have found it to be the
| most powerful open source library that's not D3.
| thoughtpalette wrote:
| Also using Ant Design with eCharts. Having to funnel the
| designers to not use gradients for all the charts has been fun.
| While eCharts supports _some_ gradients, it's been a PITA for
| certain chart types.
|
| I also made the mistake of using Ant Design Pro Forms since I
| wanted to use the StepForm Wizard component. All of the tsdocs
| are in Chinese and it's barely documented for more than their
| example use cases :'}
| antman wrote:
| Examples not clickable and failed to find the bar range example
| documentation. Hope it has a horizontal option!
| homebrewer wrote:
| Props to them for keeping backwards compatibility. I always dread
| seeing these major releases, especially after being burned
| several times by the tire fire of react-router. Migrating a
| rather large project from 5.6 to 6.0 (10 chart types, around 1k
| charts in total) took maybe 15 minutes of work. IIRC the only
| breaking change was them moving the legend to the bottom, which
| was easy to revert by importing the old theme.
|
| And all that for free. The project was using a commercial library
| until about a year ago; no regrets since moving to echarts.
| mitemte wrote:
| react-router is such a disaster. It's got to be one of the most
| irritating but ubiquitous packages. I'm going to migrate to
| Tanstack Router on a project that uses react-router v6
| currently, rather than bother with the v7 migration.
| drewbitt wrote:
| There is no real v7 migration though. There hasn't been
| anything breaking in react router for several years now.
| andrewmcwatters wrote:
| It hurts my marketability that I no longer put up with the
| masochism of the React ecosystem, but moving to web components
| was such a relief. I don't tolerate these projects that are
| constantly changing for no good reason.
| mardifoufs wrote:
| I'm not sure I follow. Are you saying that you don't use
| dependencies when using web components? Because that's
| usually the issue, not react itself. React doesn't really
| ever break backward compatibility. But yeah, if you don't use
| any deps, 3rd party upgrades/migrations aren't an issue.
| prinny_ wrote:
| React itself is ok on that regard . But popular packages
| that are often installed in React projects very often
| publish breaking changes or deprecate stuff that used to be
| "the norm" until just a major version ago. It's sad because
| the most common solution is to pin the dependencies.
| andrewmcwatters wrote:
| React itself is problematic enough considering its design
| is incoherent (now server-side rendered functional
| stateless programming with side effects,) but the other
| question is "What React?"
|
| React isn't 12 years old, React is 5 different libraries,
| with paradigms that have lived for about roughly 2 years on
| average.
|
| I don't know about you, but my projects are more mature
| than 2 years old. I don't have the patience for that kind
| of bullshit.
|
| And I've done this stuff long enough to know if the kids
| decide this is the new fashion, the old stuff might
| incidentally still work, but all of the library's attention
| is going to be on what the maintainers are working on.
|
| So React is now a server-side rendered, functional,
| stateless component library with side effects.
|
| And that sounds like the dumbest thing I've ever read in
| web development.
| kylecordes wrote:
| I'm always thrilled to see eCharts mentioned anywhere. It is a
| highly featureful, complete solution for making sophisticated
| data-intense charts. Various commercial alternatives pale in
| comparison.
| rorylaitila wrote:
| I feel I've tried them all. Echarts is the best overall charting
| library. Fast, complete, easy to start, advanced options, looks
| great by default, good examples, server and client rendering, SVG
| and canvas.
|
| My only complaint is the chart-data data structures. Each chart
| type takes a different structure and axis data structure. They
| bolted on a data table feature (columns and rows), but it's not
| as documented and last I tried, incomplete.
| hbarka wrote:
| Where's Sankey charts?
| darrenf wrote:
| Right there in the examples
| https://echarts.apache.org/examples/en/index.html#chart-type...
| porridgeraisin wrote:
| Recently tried a bunch of frontend charging libraries.
|
| Disclaimer: I only tried line charts for time series X axis and
| bar charts for categorical X axis. No other charts. I had
| filters, group by and sort by options in control panel. Data was
| fetched everytime from database when control panel was modified,
| so no client side number crunching.
|
| My requirements were:
|
| Control panel at top (which I'll manage). Then a grid of charts
| below with synced cursors and zooms (toggleable).
|
| Basically, grafana, but they're not necessarily time series
| graphs.
|
| I found uPlot(which is iirc what grafana uses) and eCharts to be
| the handsdown winners. Within those two, I preferred eCharts as
| first of all uplot didn't have any docs, LLMs didn't really
| perform well, and also vue-eplot wrapper didn't work.
|
| Secondly, eCharts had nice animations, which uPlot does not
| support and I understand why, but I just wanted it for this
| project. It's really neat, when you add a group by in your
| control panel the charts nicely animate and the legend shows up
| etc
|
| The others just did not impress, highcharts, chart.js, c3.js, ag-
| grid.
|
| But maybe they're better fit for another usecase.
|
| Vue-echarts is such a nice wrapper too. // your
| refs from control panel inputs // chartOption = computed(()
| => make from inputs) // <v-chart :chartOption />
|
| Performance wise, it didn't lag upto few month date ranges for
| daily data that arises out of user interaction. So not super
| dense like logs or telemetry measurements, but not that sparse
| either. I didn't really benchmark it with proper stress tests
| beyond checking if it worked for the usecase at hand.
|
| It is also ridiculously reliable. When you have empty/missing
| data there's no annoying try-catch or guards you have to do when
| rendering, it automatically shows an empty graph with the size
| you specified. The title and other decorations still remain.
|
| It also works well inside flex/grid layouts. No nonsense with CSS
| needed.
| kinow wrote:
| Thanks for the summary and good to know it integrates well with
| Vue.js!
| nirav72 wrote:
| This is neat. Anyone using these for live charts with real time
| data?
| blensor wrote:
| This was such a random post on HN, because I didn't even know
| about echarts about 2 weeks ago. I had been using amcharts for
| the workout analysis in XRWorkout for several years but wanted
| to switch to a more open library.
|
| Converting the old amcharts code to echarts worked almost
| automatically with Gemini 2.5 Pro and since a bit over a week
| all stats in the game ( via webview ) and in the web on the
| user portal are now using echarts.
|
| I'm even using it in a Three.js visualizer for the recorded
| workout data ( which is still highly experimental so don't
| judge the visuals please ):
| https://portal.vrworkout.at/static/workout_visualizer/index....
| ggregoire wrote:
| I've toyed with various JS charting libraries over the last 15
| years and I always come back to Echarts. Other libraries always
| miss options you eventually need if you are trying to do anything
| non trivial (e.g. the last one I tried didn't support multiple Y
| axises). It's feature complete while not having the complexity of
| coding a chart from scratch with D3. Works well with React too.
| RyanHamilton wrote:
| I evaluated a lot of chart frameworks 3 years ago before choosing
| echarts. We use it in our real time database visualization to to
| display charts at 10+ frames per second:
| https://www.timestored.com/pulse/ it's proved to be an excellent
| choice. There's been only one essential feature that I couldn't
| achieve and rechecking the github issue I see they merged a fix
| so I'm going to have to upgrade. Great work. Thanks.
| RyanHamilton wrote:
| Weekend and lunch time axis breaks for those curious:
| https://github.com/apache/echarts/issues/12796
| billfruit wrote:
| Can it do interactive 3d plots?
| echoangle wrote:
| Looks like it:
|
| https://echarts.apache.org/examples/en/editor.html?c=line3d-...
___________________________________________________________________
(page generated 2025-08-05 23:01 UTC)