blob: d85b0eca89b0a8217637503e0fabc4f9aee6aaaa (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
|
using RealTimeGraphX.DataPoints;
using RealTimeGraphX.WPF;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
using Tango.FSE.Common.Graphs;
namespace Tango.FSE.Procedures.Views
{
/// <summary>
/// Interaction logic for ResultsView.xaml
/// </summary>
public partial class ResultsView : UserControl
{
public ResultsView()
{
InitializeComponent();
}
private void RealTimeGraph_Loaded(object sender, RoutedEventArgs e)
{
RealTimeGraph graph = sender as RealTimeGraph;
Result result = graph.DataContext as Result;
if (result != null && result.IsGraph)
{
var values = (result.Value as IEnumerable<double>).ToList();
WpfGraphController<Int32DataPoint, DoubleDataPoint> controller = new WpfGraphController<Int32DataPoint, DoubleDataPoint>();
controller.Range.AutoY = false;
controller.Range.MinimumY = values.Min();
controller.Range.MaximumY = values.Max();
controller.Range.MaximumX = values.Count;
controller.DataSeriesCollection.Add(new WpfGraphDataSeries() { Stroke = Colors.DodgerBlue });
graph.Controller = controller;
controller.PushData(
Enumerable.Range(0, values.Count).Select(x => new Int32DataPoint(x)),
values.Select(x => new DoubleDataPoint(x)));
}
}
}
}
|