Detailed chart/diagram library research #260
Labels
No labels
_CRITICAL_
API
app
backEnd
Blocked, waiting for further changes
bug
cleanup
close
design
duplicate
enhancement
feature request
frontEnd
help wanted
invalid
low priority
needs input
needs review
project documentation
question
research
reviewed
script
security
SQL
style
testing
topLevel
wontfix
No milestone
No project
4 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Andras/BoundlessFlowCampus2K#260
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
We need to research libraries for displaying and making charts. Please post a thorough review of each examples in the comments to enable a formal evaluation. Refer to Issue #123 for libraries.
Parent Issue: #111
Good inspiration may be:
#185
Recharts is built for React, uses SVG rendering. It has recently been updated and since it naturally uses React components it's a good fit for our project. The documentation is extensive, making it easy to get started.
Pros:
Cons:
Charts.js (react-chartjs-2) is a popular JavaScript chart library with an official React wrapper called react-chartjs-2. It handles large amounts of data better than the other two options because of the way it renders. It's not built specifically for react so you configure charts through settings objects instead of building them with components.
Pros:
Cons:
Google charts is google's own chart library with a react wrapper. It has a large variety of chart types and some unique ones. The charts are loaded from google's servers so it needs internet connection to work.
Pros:
Cons:
Review on Chart library research.
The current research provides a correct overview over these 3 libraries but a very basic one. While the descriptions of the features and what is good and bad is generally correct, it lacks some depth and comparison. This makes it hard to conclude exactly which one of these libraries is most fit for our project.
Recharts: The overview is accurate, but the claim that it is "Less customizable than the others" is very unclear. According to Recharts own documentation it states that it has extensive customization through react components. It would be good to clarify in what way it is less customizable and also compared to which library. It is also not mentioned how it handles large data sets or how it performs.
Charts.js: This overview is correct, but while it is descriptive in how it describes that it can handle large datasets it does not explain why that is the case, for example its use of canvas rendering which improves the performance.
Google charts: This overview is also correct but it is limited. It explains the requirement of needing internet but does not go into what that means. This could affect the reliability as the all of the charts used will not work without a stable internet connection.
Overall, everything looks factually correct and is a great start to choosing which chart library is most suitable for our project. What is missing is a little more in depth research and comparison between the libraries.