I have a web application that functions as a dashboard, allowing a user to see summaries of historical data to view trends, etc. As an extension to this, I want to allow the user to drill-down into the historical data if they so wish.
我有一个用作仪表板的Web应用程序,允许用户查看历史数据的摘要以查看趋势等。作为对此的扩展,我希望允许用户深入了解历史数据,如果他们愿意的话。
What this will amount to is a table of time-value pairs, showing the time a particular data point was recorded as well as its associated value. The issue is that there could be a very large amount of data on record (millions of points is entirely possible), which means it wouldn't work to load all the data up front and display it to the user.
这将是一个时间 - 值对表格,显示特定数据点的记录时间及其相关值。问题是记录中可能存在大量数据(完全可能有数百万个点),这意味着预先加载所有数据并将其显示给用户是行不通的。
So far, my best idea is to implement the table of time-value pairs with "infinite scrolling" - i.e. the first x points are loaded and then as the user scrolls down the next x points are fetched and so on until the user reaches the end of the data (with a fixed-size cache of points, so that I don't run out of memory). The issue with this approach, though, is that there's no way to get to the end of the data without first fetching every point in between.
到目前为止,我最好的想法是用“无限滚动”实现时间 - 值对表 - 即加载前x个点,然后当用户向下滚动时,下一个x点被提取,依此类推,直到用户到达数据结束(使用固定大小的点缓存,这样我就不会耗尽内存)。但是,这种方法的问题在于,如果不首先获取数据之间的每个点,就无法找到数据的末尾。
Another option would be to have a navigation interface with forward and back buttons, as well as some sort of date chooser so the user can quickly navigate to any data point they wish. This solves the problem of the first idea, but this navigation interface is far more clunky and less intuitive.
另一种选择是具有带前进和后退按钮的导航界面,以及某种日期选择器,以便用户可以快速导航到他们希望的任何数据点。这解决了第一个想法的问题,但是这个导航界面更笨重,更不直观。
My question is: is there some happy medium? A UI where it's clean and easy to navigate through the data but at the same time provide some method of jumping to a specific point in time?
我的问题是:有一些幸福的媒介吗?一个用户界面,它干净,易于浏览数据,但同时提供了一些跳转到特定时间点的方法?
Edits based on comments below:
The development environment is flex and the database is SQL Anywhere, though the back-end logistics are less important to me than a clean, functional UI.
根据以下评论进行编辑:开发环境是flex,数据库是SQL Anywhere,尽管后端物流对我来说不如干净,实用的UI重要。
I agree that paging through historical data is not the most helpful thing. Unfortunately, though, some of the historical data doesn't lend itself to summaries. For example, there is string-based data where at time t1 the value is "foo" but at t2 the value is "bar" - I don't have any good ideas for how to summarize data like that.
我同意翻阅历史数据并不是最有用的。不幸的是,一些历史数据不适用于摘要。例如,有基于字符串的数据,其中在时间t1,值为“foo”,但在t2,值为“bar” - 我对如何汇总这样的数据没有任何好的想法。
1 个解决方案
#1
paging through huge amounts of data is not very helpful. Give them a summary of the data with groupings (say by a time period). If they want to know what made up the detail let them click on it and 'drill down' into the detail.
通过大量数据进行分页并不是很有帮助。使用分组(例如按时间段)向他们提供数据摘要。如果他们想知道构成细节的内容,让他们点击它并“深入”细节。
#1
paging through huge amounts of data is not very helpful. Give them a summary of the data with groupings (say by a time period). If they want to know what made up the detail let them click on it and 'drill down' into the detail.
通过大量数据进行分页并不是很有帮助。使用分组(例如按时间段)向他们提供数据摘要。如果他们想知道构成细节的内容,让他们点击它并“深入”细节。