public InformationFunctionPlot(BaseCell cell, int rowId, int colId) { InitializeComponent(); this.Title = String.Format("Изменение показателей информированности в ситуации S{0} при условии фактора F{1}", rowId+1, colId+1); Model = new InformationViewModel(cell); this.DataContext = Model; }
public InformationViewModel(BaseCell cell) { FullnessModel = new PlotModel { Title = "Полнота" }; var fullnessFunc = cell.Fullness; FullnessModel.Series.Add(new FunctionSeries(fullnessFunc, 0, DetermineLimit(fullnessFunc, 1, 0.1, 0.01), 0.01) { Color = OxyColors.Red }); FullnessModel.Axes.Add(new LinearAxis { Position = AxisPosition.Left, Minimum = -0.1, Maximum = 1.1 }); FullnessModel.Axes.Add(new LinearAxis { Position = AxisPosition.Bottom, Title = "t" }); this.ReliabilityModel = new PlotModel { Title = "Достоверность" }; var reliabilityFunc = cell.Reliability; this.ReliabilityModel.Series.Add(new FunctionSeries(reliabilityFunc, 0, DetermineLimit(reliabilityFunc, 1, 0.1), 0.01) { Color = OxyColors.Blue }); ReliabilityModel.Axes.Add(new LinearAxis { Position = AxisPosition.Left, Minimum = -0.1, Maximum = 1.1 }); ReliabilityModel.Axes.Add(new LinearAxis { Position = AxisPosition.Bottom, Title = "t" }); this.TimelinessModel = new PlotModel { Title = "Своевременность" }; var timelinessFunc = cell.Timeliness; this.TimelinessModel.Series.Add(new FunctionSeries(timelinessFunc, 0, DetermineLimit(timelinessFunc, 0, 0.1), 0.1) { Color = OxyColors.Magenta }); TimelinessModel.Axes.Add(new LinearAxis { Position = AxisPosition.Left, Minimum = -0.1, Maximum = 1.1 }); TimelinessModel.Axes.Add(new LinearAxis { Position = AxisPosition.Bottom, Title = "t" }); }