In my work on a visualization dashboard, I am currently facing some challenges.
I am torn between choosing d3js and canvasjs. While d3js offers great visuals and rich functionality, I lean towards canvas because of how easy it is to create charts. If you have any insights on how I can decide between the two, please share.
Purpose: My goal is to build an interactive dashboard with numerous cross filters for visual representations. Do you have any suggestions? Regarding data retrieval from API; should I fetch all data from the server and process it in JavaScript, or should I retrieve data separately for each chart?
If I pull all the combined data from the database, the size exceeds 2 MB which is too large for a dashboard. On the other hand, fetching precise data for individual charts results in less data. An example would clarify this dilemma further.
Imagine I have sales data with multiple columns linked from various tables, and my dashboard features four charts:
chart 1: Bar chart for sales by item group
chart 2: Pie chart for sales by salesperson
chart 3: Line graph showing sales by hours (weekdays): shop sales trend
chart 4: Total Sales, Total Orders KPI
Data Collection: I can either obtain data separately for each chart through REST API or retrieve all joined table data at once (larger than 2 MB).
Interactivity: When I click on an item group in chart 1 (bar chart), I want the rest of the charts to filter accordingly (I'm considering writing a JS filtering code).
What approach should I take for data retrieval and cross-filtering?
Addressing the above query may lead to more questions.
Thank you.