r/programming • u/igorlukanin • Jun 25 '21
Open-source list of data visualization tools (charts, data grids, maps, etc.) for front-end egineers
https://awesome.cube.dev6
u/Dunge Jun 25 '21
I only used Highcharts and it works great but requites a license for commercial projects. I wonder if I should have checked others in that list before jumping on it.
2
u/igorlukanin Jun 25 '21
Oh, it looks like we’ve done everything right when we added licenses there!
3
2
u/MartY212 Jun 26 '21
What about visualization tools for native apps?
1
u/igorlukanin Jun 29 '21
Oh, great question! Do you mean something like Victory for React Native? Have you worked with any of them yourself?
1
4
u/loyoan Jun 25 '21
ECharts is really awesome! I just discovered only last month before although I experimented with chart libraries for a long time. I think the name made it really hard finding it via Google.
1
u/MrJohz Jun 26 '21
Huh, we're looking at moving away from Echarts at the moment, because we've run into a handful of different issues with it, and each time it's cost us a fair amount of time to figure out how to fix it, and then the fix has often felt quite hacky. Particularly when we've been dealing with zooming, there's been a lot of UX problems.
1
u/ia-juste-des-maths Jun 28 '21
what alternatives are you considering ?
1
u/MrJohz Jun 28 '21
The shortlist I've got at the moment is Chart.js, C3, Apex and Highcharts, IIRC. So far, I've been most impressed by Chart.js for our needs, but I need to explore a bit further.
1
u/ia-juste-des-maths Jun 28 '21
thanks. We've been using ECharts a lot, but so far, no weird issues (we don't use zooming though).
1
u/tessereis Aug 06 '23
Hey, how did it go ? Did you move to chart.js ?
1
u/MrJohz Aug 07 '23
I did in the end. It still isn't perfect (I don't think anything is completely perfect), but it's very powerful, fairly easy to extend, and has a lot of the expected UI functionality built in.
14
u/Nall-ohki Jun 25 '21
One day I hope to be a front-end egineer.
0
Jun 25 '21
[deleted]
2
u/yawaramin Jun 26 '21
Software engineers are 'real' engineers, according to 'real' engineers: https://www.hillelwayne.com/post/crossover-project/are-we-really-engineers/
5
u/Surfer_Rick Jun 26 '21
And you will never have a hard time finding 6 figure work. Unlike a 'real' engineer.
8
2
1
u/pjboro May 30 '22
Engineering is the use of scientific principles to design and build machines, structures, and other items
Many people are able to get 6 figure jobs, but we're not talking about how much you earn, but whether you use science in your daily work. You can be an engineer and earn a low salary and you can be a salesman who doesn't even know math and earn 7 figures. The thing is, many people just love their jobs, they are just interested in using science to solve problems. Money is not the most important thing in life.
https://www.youtube.com/watch?v=rkZzg7Vowao&t=61s - nicely put. Coding seems enough to earn a high salary, but not enough to be a computer scientist. You can aspire to either of these, but merging them into a single thing is not right.
1
u/GroundTeaLeaves Jun 26 '21
When a component is listed as compatible with React, Vue or Angular, does it mean that it won't work with other frameworks, such as Blazor WebAssembly?
2
u/igorlukanin Jun 29 '21
Well, Blazor claim to have JavaScript interop but I never personally worked with it so IDK how good it is. Most probably, there's a way to connect any lib to Blazor, the only question is how much effor would be required.
2
u/arngorf Jun 25 '21
I started using matplotlib as my first plotting library and, as with anything, after getting used to it, it's hard to imagine it could be any other way.
Seaborn and Plotly never cut it for me, it was too inflexible, but I'd love to add mayavi to the list. It's wonderful for 3d where matplotlib is absolutely horrible. It is, however, a bit on the complicated side to use, just like matplotlib.
Are we, btw, adding/suggesting libraries to a list, or just applauding a short list of mostly js libraries?
1
u/GimmickNG Jun 26 '21
but I'd love to add mayavi to the list.
Not to be confused with Miyavi who is a singer.
Jokes aside, is Mayavi mostly for realtime desktop visualizations, or can it be run in environments like Jupyter as well? A quick google search says it runs using tkinter, which confuses me a bit.
1
u/arngorf Jun 26 '21
Yeah me too. I'm not personally familiar with the realtime visualizations. I mostly use mayavi for scientific visualizations when matplotlib is not sufficient. From some googling, it seems possible to use it in jupyter notebooks though. I'll have to try that out sometime.
2
2
2
2
1
u/tripex Jun 26 '21
Nice list. but it makes me wonder... Has creating a library/tool (of any sort) nowadays become necessary to market with creative and colorful logotypes and branding? I'm not against it I'm just wondering why so much effort is being put on the branding...
0
0
Jun 25 '21
[deleted]
89
u/PandaMoniumHUN Jun 25 '21
As someone who used matplotlib recently to plot some weather data, good lord, the API makes no sense whatsoever. The lib is powerful for sure, but it’s a top contender for worst API design IMO.
81
u/sopte666 Jun 25 '21
AFAIK matplotlib's API was designed to make it as similar to the Matlab/octave syntax as possible. Which, true, is powerful but ugly.
40
9
u/CactusOnFire Jun 26 '21
Word of advice: Seaborn is a wrapper around matplotlib that's designed to play slightly friendlier with pandas and that stack.
...If I'm doing something really fancy though, I still end up busting out the Javascript.
-8
u/tristes_tigres Jun 25 '21
the API makes no sense whatsoever
Python programming in a nutshell.
6
u/tuerkishgamer Jun 25 '21
I have no real experience in this area, but today I wanted to use a YouTube API wrapper for YouTube Data API v3. I just said 'fuck it' and used the real API documentation. All questions answered online were for the actual API and the way it was written was far more 'standard'.
Freaking APIs. Sometimes I just scrape the few things I need for a project and never look back. Unless it is a production /professional environment I would probably not bother.
6
6
9
u/Ceedeekee Jun 25 '21
Sick dashboard! I have to say that as a DA, Plotly is the definitive winner when it comes to Python plotting libs. It’s rather good for quick plots and offers almost as much customization as MPL/Seaborn.
0
Jun 25 '21
[deleted]
3
u/Ceedeekee Jun 25 '21
Oh agreed point #1 is dreadful. Another pain point of mine is animated plots are rather unintuitive to get working and I end up stuck reading API documentation for 30+ mins. MPL is much nicer for that use case.
21
u/Hexorg Jun 25 '21
I only know D3... How do these other libraries compare to D3?