I’m using a stacked area line chart where the X axis is a date + time that indicates when the measurement was taken. The script that populates the database runs every 15 minutes, so there’s not a crazy amount of data points here. The desired aggregate setting is “minute”, which is not ideal when selecting a large date rage.
This visual has a filter for start and end dates, which are controls that have a day granularity. If I select more than about a week for the date range, the graph doesn’t display all the days for some reason. The end date is always correct, but the start date is some arbitrary date AFTER the start date that I’ve selected. (In the visual settings, the number of data points for the x-axis is set to the maximum of 200.)
If I was actually coding the graph behind the scenes, I would instinctively add logic to control the granularity based on the number of days between the start and end dates, or based on the number of data points in the database. For instance, if more than a week, switch to hourly datapoints instead of minute.
I’m not quite sure how to fix this issue to prevent it from looking like there are missing datapoints. These are my ideas, but I don’t see any way to implement them:
- The aggregate setting should be dynamically changed based on the number of days between start and end dates. Even if I have “minute” selected, if there are too many data points, it should switch to hourly, then daily.
- Ensure that the end-user can only select a maximum of one week between start and end dates. This is not at all ideal, since the graph is used to track issues and trends.
- Add another x-axis (dimension) for hourly and daily aggregate drill-downs. QuickSight will not let me do this for the x-axis.
In these examples, the aggregate for the x-axis is HOURLY. It gets worse when set to MINUTE. Notice that there is indeed data from June 10th in the second graph, after I change the date range: