private static NPlot.Gtk.PlotSurface2D CreatePlotSurface(IEnumerable <IEnumerable <double> > data, IEnumerable <double> t, IEnumerable <string> labels) { var plotSurface = new NPlot.Gtk.PlotSurface2D(); plotSurface.Clear(); plotSurface.Padding = 40; plotSurface.Add(new Grid { HorizontalGridType = Grid.GridType.Fine, VerticalGridType = Grid.GridType.Fine }); plotSurface.Legend = new Legend { YOffset = 16, HorizontalEdgePlacement = Legend.Placement.Outside, VerticalEdgePlacement = Legend.Placement.Inside }; plotSurface.Legend.AttachTo(PlotSurface2D.XAxisPosition.Bottom, PlotSurface2D.YAxisPosition.Right); for (int i = 0; i < data.Count(); i++) { plotSurface.Add(new LinePlot { AbscissaData = t.ToArray(), OrdinateData = data.ElementAt(i).ToArray(), Label = labels.ElementAt(i), Pen = new Pen(GetRandomColor(), 2) }); } plotSurface.Refresh(); plotSurface.Show(); return(plotSurface); }
private static NPlot.Gtk.PlotSurface2D CreatePlotSurface(IEnumerable <double> y) { var plotSurface = new NPlot.Gtk.PlotSurface2D(); plotSurface.Clear(); plotSurface.Padding = 40; plotSurface.Add(new Grid { HorizontalGridType = Grid.GridType.Fine, VerticalGridType = Grid.GridType.Fine }); plotSurface.Add(new LinePlot { DataSource = y.ToArray() }); plotSurface.Refresh(); plotSurface.Show(); return(plotSurface); }