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 { /// /// Interaction logic for ProcedureRunnerExecutionView.xaml /// public partial class ProcedureRunnerExecutionView : UserControl { public ProcedureRunnerExecutionView() { 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).ToList(); WpfGraphController controller = new WpfGraphController(); 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))); } } } }