apache / echarts

Apache ECharts is a powerful, interactive charting and data visualization library for browser
https://echarts.apache.org
Apache License 2.0
60.43k stars 19.61k forks source link

[Feature] Arbitrary Mesh Display #17862

Open urgrund opened 1 year ago

urgrund commented 1 year ago

What problem does this feature solve?

eCharts GL and 3D rendering is very restricted at the moment when wanting to visualise 3D data outside of scatter/plot or a very limited "polygon" (which is really just extruded 2D shape)

As web browsers and WebGL get more powerful, there is opportunity to visualise data in new ways in 3D.

eCharts would be improved in their 3D/GL area with the ability to have arbitrary mesh support:

Use cases:

2_infrastructuremodelling-350x215 1

MineLife-VR-Bornite-Ore-in-Pit-credit-LlamaZOO-e1543426286554 1

What does the proposed API look like?

In the Polygon series type ( https://echarts.apache.org/en/option-gl.html#series-polygons3D.data ) You can only set XY of the data and then a constant height for everything.

It would be great to support rich 3D mesh data, here is simple proposal of a triangle

data:[ { vertices: [[0,0,0], [0,1,0], [0,0,1]], triangles: [ [0,1,2] ] // Indexes of the vertex buffer with a stride of 3 uv: [[0,0], [0,0.5], [0.5,0] // UV coordinates of vertices for texture mapping } ]

How we feed these arrays could then be arbitrary... from a proceedural process, or by processing a popular 3D file (STL, FBX, OBJ)

Generally, the mesh data could include

urgrund commented 1 year ago

Hello - was curious if there were any thoughts on this or if there were any plans for the GL component of eCharts looking forward?

urgrund commented 1 year ago

sorry to bump again, would be great to hear of any roadmap or upcoming features for GL and eCharts without needing to move this part of our application to a different library as we have built a nice framework with eCharts

urgrund commented 1 year ago

shame there's no comments on this?

the GL pack of eCharts is a promising start and would be great if it were extended rather than having to jump to another package (ie. we can still use much of the eCharts Instance/boilerplate code and tooltips... etc)

is there any roadmap at all for eCharts (not just GL) ?

astanziola commented 1 year ago

Bumping this as well, that would be a great feature to have!

chadamski commented 1 year ago

This is what's preventing me from fully switching over to Echarts at the moment, for what it's worth. I work in medical tech and would find this capability quite powerful.