Opened 11 years ago
Last modified 11 years ago
#2151 new feature request
Scatter plot view for visualizing n-dimensional data points
Reported by: | abeham | Owned by: | swagner |
---|---|---|---|
Priority: | medium | Milestone: | HeuristicLab 3.3.x Backlog |
Component: | Analysis.Views | Version: | 3.3.9 |
Keywords: | Cc: |
Description
Currently, there is a ScatterPlot which contains Point2D<double> that can be viewed. Often one comes across data that has multiple dimensions which should be viewed by e.g. selecting two axes to compare these dimensions. The existing RunCollectionBubbleChartView comes closest to this functionality, but is specific to runs and runcollections.
A more generalized view should be implemented. The view should accept IEnumerable<IEnumerable<Point>> where Point is Point { Dictionary<string, double> Values; IContent Tag; }. The outer enumerable would indicate different series and the inner enumerable the points in each series. Ideally, the Point should be able to handle store string and DateTime/TimeSpan data types as well as the view being able to handle them correctly.
Change History (2)
comment:1 Changed 11 years ago by gkronber
comment:2 Changed 11 years ago by abeham
That was a suggestion by mkommend to have a possibility to group points to different series. The simpler approach would be to have only a single series represented by an IEnumerable<Point>. Both implementations are able to satisfy several requirements I often have regarding visualization.
For me the more important matter would be to have correct handling of DateTime values, though that is more tricky to implement. The tag is also somewhat important since I often want to view all dimensions of a certain point. We discussed that it's probably enough to assume that there is some kind of IContent behind each point.
I don't understand the reasoning for the data types completely.
Either we work with IEnumerable<Point> where each Point is basically a Dictionary<string, double>, or we work with IEnumerable<IEnumerable<Point>> where each point is either a double, DateTime or string value.