I have some datasets I need to chart with millions and millions of records and I need to boost performance.
My thoughts were similar to how images are fractally compressed - there's no point decompressing 10 pixels of data when you are showing it in 1 pixel. I want to do the same with data on the server. don't send data you can't show.
Here is roughly what that translates into on a chart.
- Lets say my chart area is 1000 pixels wide. I want to get 1000 representative records from the million that are on the server - I'm only sending one record per 1000.
- Now I zoom in so that I'm looking at 20% of the dataset. I want to infill those records I'm looking at so that my chart shows just sufficient detail - 1:200 records. Initially I will draw a coarse chart but it will improve as my infill data arrives
- Now I pan. I get the same coarse chart as when I zoom, which later fills in.
- If I pan back to where I was, there is no new data fetch since I already have it and the chart displays full detail.
- If I zoom in again - fetch data.
- If I zoom out, only draw the 1000 points of data - ignore the detail that can't be shown anyway.
Combined with UI virtualization this should make for a lightening fast chart with huge datasets. I know what I want to do but I'm not clear about what features within the Telerik suite will help me accomplish it.
Any thoughts? Pointers?
My thoughts were similar to how images are fractally compressed - there's no point decompressing 10 pixels of data when you are showing it in 1 pixel. I want to do the same with data on the server. don't send data you can't show.
Here is roughly what that translates into on a chart.
- Lets say my chart area is 1000 pixels wide. I want to get 1000 representative records from the million that are on the server - I'm only sending one record per 1000.
- Now I zoom in so that I'm looking at 20% of the dataset. I want to infill those records I'm looking at so that my chart shows just sufficient detail - 1:200 records. Initially I will draw a coarse chart but it will improve as my infill data arrives
- Now I pan. I get the same coarse chart as when I zoom, which later fills in.
- If I pan back to where I was, there is no new data fetch since I already have it and the chart displays full detail.
- If I zoom in again - fetch data.
- If I zoom out, only draw the 1000 points of data - ignore the detail that can't be shown anyway.
Combined with UI virtualization this should make for a lightening fast chart with huge datasets. I know what I want to do but I'm not clear about what features within the Telerik suite will help me accomplish it.
Any thoughts? Pointers?