コード例 #1
0
ファイル: Text.cs プロジェクト: Jmerk523/ScottPlot
        public void Test_Text_Frame()
        {
            var plt = new ScottPlot.Plot(400, 300);

            // start with default settings
            var txt = new ScottPlot.Plottable.Text()
            {
                Label = "hello"
            };

            plt.Add(txt);
            var bmp1 = TestTools.GetLowQualityBitmap(plt);

            // change the plottable
            txt.BackgroundFill  = true;
            txt.BackgroundColor = System.Drawing.Color.Gray;
            var bmp2 = TestTools.GetLowQualityBitmap(plt);

            // measure what changed
            //TestTools.SaveFig(bmp1, "1");
            //TestTools.SaveFig(bmp2, "2");
            var before = new MeanPixel(bmp1);
            var after  = new MeanPixel(bmp2);

            Console.WriteLine($"Before: {before}");
            Console.WriteLine($"After: {after}");

            Assert.That(after.IsDarkerThan(before));
        }
コード例 #2
0
        public void Test_ScaleBar_FontColor()
        {
            var plt = new ScottPlot.Plot();

            plt.AntiAlias(false, false, false);

            // create plot with generic scalebar settings
            plt.PlotSignal(DataGen.Sin(51));
            plt.PlotSignal(DataGen.Cos(51));
            var sb = new PlottableScaleBar()
            {
                Width           = 5,
                Height          = .25,
                VerticalLabel   = "5 V",
                HorizontalLabel = "250 ms"
            };

            plt.Add(sb);
            var bmp1 = new System.Drawing.Bitmap(plt.GetBitmap(renderFirst: true));

            // customize the scalebar
            sb.FontColor = System.Drawing.Color.Blue;
            var bmp2 = new System.Drawing.Bitmap(plt.GetBitmap(renderFirst: true));

            // measure what changed
            //TestTools.SaveFig(bmp1, "1");
            //TestTools.SaveFig(bmp2, "2");
            var before = new MeanPixel(bmp1);
            var after  = new MeanPixel(bmp2);

            Console.WriteLine($"Before: {before}");
            Console.WriteLine($"After: {after}");

            Assert.That(after.IsMoreBlueThan(before));
        }
コード例 #3
0
        public void Test_Text_FrameColor()
        {
            var plt = new ScottPlot.Plot();

            plt.AntiAlias(false, false, false);

            // start with default settings
            var txt = new PlottableText()
            {
                text = "hello", frame = true, frameColor = System.Drawing.Color.Gray
            };

            plt.Add(txt);
            var bmp1 = new System.Drawing.Bitmap(plt.GetBitmap(renderFirst: true));

            // change the plottable
            txt.frameColor = System.Drawing.Color.Blue;
            var bmp2 = new System.Drawing.Bitmap(plt.GetBitmap(renderFirst: true));

            // measure what changed
            //TestTools.SaveFig(bmp1, "1");
            //TestTools.SaveFig(bmp2, "2");
            var before = new MeanPixel(bmp1);
            var after  = new MeanPixel(bmp2);

            Console.WriteLine($"Before: {before}");
            Console.WriteLine($"After: {after}");

            Assert.That(before.IsGray());
            Assert.That(after.IsNotGray());
            Assert.That(after.IsMoreBlueThan(before));
        }
コード例 #4
0
ファイル: Bar.cs プロジェクト: wheregone/ScottPlot
        public void Test_Bar_ChangingValues()
        {
            var plt = new ScottPlot.Plot();

            plt.AntiAlias(false, false, false);

            // start with default settings
            double[] ys  = new double[] { 1, 3, 2, 4 };
            var      bar = new PlottableBar(null, ys, null, null)
            {
            };

            plt.Add(bar);
            var bmp1 = new System.Drawing.Bitmap(plt.GetBitmap(renderFirst: true));

            // change the plottable
            bar.ys[0] += 1;
            var bmp2 = new System.Drawing.Bitmap(plt.GetBitmap(renderFirst: true));

            // measure what changed
            //TestTools.SaveFig(bmp1, "1");
            //TestTools.SaveFig(bmp2, "2");
            var before = new MeanPixel(bmp1);
            var after  = new MeanPixel(bmp2);

            Console.WriteLine($"Before: {before}");
            Console.WriteLine($"After: {after}");

            Assert.That(after.IsDarkerThan(before));
        }
コード例 #5
0
ファイル: ScaleBar.cs プロジェクト: ajipsum/ScottPlot
        public void Test_ScaleBar_LineWidth()
        {
            var plt = new ScottPlot.Plot();

            // create plot with generic scalebar settings
            plt.PlotSignal(DataGen.Sin(51));
            plt.PlotSignal(DataGen.Cos(51));
            var sb = new ScottPlot.Plottable.ScaleBar()
            {
                Width           = 5,
                Height          = .25,
                VerticalLabel   = "5 V",
                HorizontalLabel = "250 ms"
            };

            plt.Add(sb);
            var bmp1 = TestTools.GetLowQualityBitmap(plt);

            // customize the scalebar
            sb.LineWidth += 1;
            var bmp2 = TestTools.GetLowQualityBitmap(plt);

            // measure what changed
            //TestTools.SaveFig(bmp1, "1");
            //TestTools.SaveFig(bmp2, "2");
            var before = new MeanPixel(bmp1);
            var after  = new MeanPixel(bmp2);

            Console.WriteLine($"Before: {before}");
            Console.WriteLine($"After: {after}");

            Assert.That(after.IsDarkerThan(before));
        }
コード例 #6
0
ファイル: Text.cs プロジェクト: xiaobin620/ScottPlot
        public void Test_Text_FontBold()
        {
            // bold fonts are supported on all operating systems so only test on windows
            if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows) == false)
            {
                return;
            }

            var plt = new ScottPlot.Plot(400, 300);

            // start with default settings
            var txt = new ScottPlot.Plottable.Text()
            {
                text = "hello", FontSize = 12
            };

            plt.Add(txt);
            var bmp1 = TestTools.GetLowQualityBitmap(plt);

            // change the plottable
            txt.FontBold = true;
            var bmp2 = TestTools.GetLowQualityBitmap(plt);

            // measure what changed
            //TestTools.SaveFig(bmp1, "1");
            //TestTools.SaveFig(bmp2, "2");
            var before = new MeanPixel(bmp1);
            var after  = new MeanPixel(bmp2);

            Console.WriteLine($"Before: {before}");
            Console.WriteLine($"After: {after}");

            Assert.That(after.IsDarkerThan(before));
        }
コード例 #7
0
ファイル: Scatter.cs プロジェクト: usikpavel/ScottPlot
        public void Test_Scatter_Color()
        {
            var plt = new ScottPlot.Plot();

            // start with default settings
            double[] xs   = { 1, 2, 3, 4 };
            double[] ys   = { 1, 4, 9, 16 };
            var      splt = new ScatterPlot(xs, ys)
            {
            };

            plt.Add(splt);
            var bmp1 = TestTools.GetLowQualityBitmap(plt);

            // change the plottable
            splt.Color = System.Drawing.Color.Gray;
            var bmp2 = TestTools.GetLowQualityBitmap(plt);

            // measure what changed
            //TestTools.SaveFig(bmp1, "1");
            //TestTools.SaveFig(bmp2, "2");
            var before = new MeanPixel(bmp1);
            var after  = new MeanPixel(bmp2);

            Console.WriteLine($"Before: {before}");
            Console.WriteLine($"After: {after}");

            Assert.That(after.IsLighterThan(before));
        }
コード例 #8
0
ファイル: AxisSpan.cs プロジェクト: bclehmann/ScottPlot
        public void Test_AxisSpan_Color()
        {
            var plt = new ScottPlot.Plot();

            // start with default settings
            var axSpan = new HSpan()
            {
                X1 = 1.23, X2 = 2.34, Color = System.Drawing.Color.Gray
            };

            plt.Add(axSpan);
            var bmp1 = TestTools.GetLowQualityBitmap(plt);

            // change the plottable
            axSpan.Color = System.Drawing.Color.Black;
            var bmp2 = TestTools.GetLowQualityBitmap(plt);

            // measure what changed
            //TestTools.SaveFig(bmp1, "1");
            //TestTools.SaveFig(bmp2, "2");
            var before = new MeanPixel(bmp1);
            var after  = new MeanPixel(bmp2);

            Console.WriteLine($"Before: {before}");
            Console.WriteLine($"After: {after}");

            Assert.That(after.IsDarkerThan(before));
        }
コード例 #9
0
ファイル: AxisSpan.cs プロジェクト: bclehmann/ScottPlot
        public void AxisVSpan_ExtremeZoomIn_FullScreenIsSpanColor()
        {
            var plt    = new ScottPlot.Plot();
            var axSpan = new VSpan()
            {
                Y1 = 1, Y2 = 10, Color = System.Drawing.Color.Green
            };

            plt.Add(axSpan);

            // Initial zoom to fill full plot with span color
            plt.AxisZoom(1, 10);

            var smallZoomBmp = TestTools.GetLowQualityBitmap(plt);
            var smallZoom    = new MeanPixel(smallZoomBmp);

            // Extreme zoom to prove that full plot filled with span Color
            plt.AxisZoom(1, 10_000_000);

            var extremeZoomBmp = TestTools.GetLowQualityBitmap(plt);
            var extremeZoom    = new MeanPixel(extremeZoomBmp);

            // Compare mean pixel with delta, because different ticks
            // Y Ticks has more affect on mean pixel
            Assert.AreEqual(smallZoom.RGB, extremeZoom.RGB, 20);
        }
コード例 #10
0
ファイル: AxisLine.cs プロジェクト: wheregone/ScottPlot
        public void Test_AxisLine_LineWidth()
        {
            var plt = new ScottPlot.Plot();

            plt.AntiAlias(false, false, false);

            // start with default settings
            var axLine = new PlottableHLine()
            {
                position = 1.23
            };

            plt.Add(axLine);
            var bmp1 = new System.Drawing.Bitmap(plt.GetBitmap(renderFirst: true));

            // change the plottable
            axLine.lineWidth += 1;
            var bmp2 = new System.Drawing.Bitmap(plt.GetBitmap(renderFirst: true));

            // measure what changed
            //TestTools.SaveFig(bmp1, "1");
            //TestTools.SaveFig(bmp2, "2");
            var before = new MeanPixel(bmp1);
            var after  = new MeanPixel(bmp2);

            Console.WriteLine($"Before: {before}");
            Console.WriteLine($"After: {after}");

            Assert.That(after.IsDarkerThan(before));
        }
コード例 #11
0
        public void Test_AxisLine_LineWidth()
        {
            var plt = new ScottPlot.Plot();

            // start with default settings
            var axLine = new HLine()
            {
                position = 1.23
            };

            plt.Add(axLine);
            var bmp1 = TestTools.GetLowQualityBitmap(plt);

            // change the plottable
            axLine.lineWidth += 1;
            var bmp2 = TestTools.GetLowQualityBitmap(plt);

            // measure what changed
            //TestTools.SaveFig(bmp1, "1");
            //TestTools.SaveFig(bmp2, "2");
            var before = new MeanPixel(bmp1);
            var after  = new MeanPixel(bmp2);

            Console.WriteLine($"Before: {before}");
            Console.WriteLine($"After: {after}");

            Assert.That(after.IsDarkerThan(before));
        }
コード例 #12
0
ファイル: Finance.cs プロジェクト: valmac/ScottPlot
        public void Test_Finance_ColorDown()
        {
            var plt = new ScottPlot.Plot();

            // start with default settings
            var op = new FinancePlot()
            {
                OHLCs = new OHLC[]
                {
                    // open, high, low, close, time, timeSpan
                    new OHLC(273, 275, 264, 265, 1, 1),
                    new OHLC(267, 276, 265, 274, 2.5, 2),
                    new OHLC(277, 280, 275, 278, 4, 1),
                }
            };

            plt.Add(op);
            var bmp1 = TestTools.GetLowQualityBitmap(plt);

            // change the plottable
            op.ColorDown = System.Drawing.Color.Blue;
            var bmp2 = TestTools.GetLowQualityBitmap(plt);

            // measure what changed
            //TestTools.SaveFig(bmp1, "1");
            //TestTools.SaveFig(bmp2, "2");
            var before = new MeanPixel(bmp1);
            var after  = new MeanPixel(bmp2);

            Console.WriteLine($"Before: {before}");
            Console.WriteLine($"After: {after}");

            Assert.That(after.IsMoreBlueThan(before));
        }
コード例 #13
0
ファイル: Function.cs プロジェクト: xiaobin620/ScottPlot
        public void Test_function_LineStyle()
        {
            var plt = new ScottPlot.Plot();

            // start with default settings
            double?func(double x) => Math.Sqrt(x);

            var funcPlot = new FunctionPlot(func)
            {
            };

            plt.SetAxisLimits(-1, 1, -.5, 1.5);

            plt.Add(funcPlot);
            var bmp1 = TestTools.GetLowQualityBitmap(plt);

            // change the plottable
            funcPlot.lineStyle = LineStyle.Dash;
            var bmp2 = TestTools.GetLowQualityBitmap(plt);

            // measure what changed
            //TestTools.SaveFig(bmp1, "1");
            //TestTools.SaveFig(bmp2, "2");
            var before = new MeanPixel(bmp1);
            var after  = new MeanPixel(bmp2);

            Console.WriteLine($"Before: {before}");
            Console.WriteLine($"After: {after}");

            Assert.That(after.IsLighterThan(before));
        }
コード例 #14
0
ファイル: Text.cs プロジェクト: Jmerk523/ScottPlot
        public void Test_Text_PixelOffset()
        {
            var plt = new ScottPlot.Plot(400, 300);

            plt.AddPoint(30, .5, System.Drawing.Color.Black, 10);

            var txt = plt.AddText("TEST", 30, .5);

            txt.FontSize        = 20;
            txt.BackgroundColor = System.Drawing.Color.FromArgb(50, System.Drawing.Color.Black);
            txt.BackgroundFill  = true;

            var bmp1 = TestTools.GetLowQualityBitmap(plt);

            txt.PixelOffsetX = 10;
            txt.PixelOffsetY = -10;

            var bmp2 = TestTools.GetLowQualityBitmap(plt);

            // measure what changed
            //TestTools.SaveFig(bmp1, "1");
            //TestTools.SaveFig(bmp2, "2");

            var before = new MeanPixel(bmp1);
            var after  = new MeanPixel(bmp2);

            Assert.That(after.IsDifferentThan(before));
        }
コード例 #15
0
ファイル: Text.cs プロジェクト: xiaobin620/ScottPlot
        public void Test_Text_FontColor()
        {
            var plt = new ScottPlot.Plot(400, 300);

            // start with default settings
            var txt = new ScottPlot.Plottable.Text()
            {
                text = "hello", FontColor = System.Drawing.Color.Gray
            };

            plt.Add(txt);
            var bmp1 = TestTools.GetLowQualityBitmap(plt);

            // change the plottable
            txt.FontColor = System.Drawing.Color.Blue;
            var bmp2 = TestTools.GetLowQualityBitmap(plt);

            // measure what changed
            //TestTools.SaveFig(bmp1, "1");
            //TestTools.SaveFig(bmp2, "2");
            var before = new MeanPixel(bmp1);
            var after  = new MeanPixel(bmp2);

            Console.WriteLine($"Before: {before}");
            Console.WriteLine($"After: {after}");

            Assert.That(before.IsGray());
            Assert.That(after.IsNotGray());
            Assert.That(after.IsMoreBlueThan(before));
        }
コード例 #16
0
ファイル: Axis.cs プロジェクト: yongmingxia/ScottPlot
        public void Test_Axis_FramelessShowsGridLines()
        {
            var plt = new ScottPlot.Plot(400, 300);

            plt.AddSignal(ScottPlot.DataGen.Sin(51));
            plt.AddSignal(ScottPlot.DataGen.Cos(51));
            plt.Frameless();

            // start with default settings
            var bmp1 = TestTools.GetLowQualityBitmap(plt);

            //TestTools.SaveFig(bmp1, "1");

            // make the grid darker
            plt.Grid(color: System.Drawing.Color.Black);
            var bmp2 = TestTools.GetLowQualityBitmap(plt);
            //TestTools.SaveFig(bmp2, "2");

            // measure what changed
            var before = new MeanPixel(bmp1);
            var after  = new MeanPixel(bmp2);

            Console.WriteLine($"Before: {before}");
            Console.WriteLine($"After: {after}");

            Assert.That(after.IsDarkerThan(before));
        }
コード例 #17
0
ファイル: Text.cs プロジェクト: xiaobin620/ScottPlot
        public void Test_Text_FontSize()
        {
            var plt = new ScottPlot.Plot(400, 300);

            // start with default settings
            var txt = new ScottPlot.Plottable.Text()
            {
                text = "hello", FontSize = 12
            };

            plt.Add(txt);
            var bmp1 = TestTools.GetLowQualityBitmap(plt);

            // change the plottable
            txt.FontSize = 36;
            var bmp2 = TestTools.GetLowQualityBitmap(plt);

            // measure what changed
            //TestTools.SaveFig(bmp1, "1");
            //TestTools.SaveFig(bmp2, "2");
            var before = new MeanPixel(bmp1);
            var after  = new MeanPixel(bmp2);

            Console.WriteLine($"Before: {before}");
            Console.WriteLine($"After: {after}");

            Assert.That(after.IsDarkerThan(before));
        }
コード例 #18
0
ファイル: AxisSpan.cs プロジェクト: xiaobin620/ScottPlot
        public void Test_AxisSpan_Alpha()
        {
            var plt = new ScottPlot.Plot();

            // start with default settings
            var axSpan = new HSpan()
            {
                position1 = 1.23, position2 = 2.34
            };

            plt.Add(axSpan);
            var bmp1 = TestTools.GetLowQualityBitmap(plt);

            // change the plottable
            axSpan.alpha /= 2;
            var bmp2 = TestTools.GetLowQualityBitmap(plt);

            // measure what changed
            //TestTools.SaveFig(bmp1, "1");
            //TestTools.SaveFig(bmp2, "2");
            var before = new MeanPixel(bmp1);
            var after  = new MeanPixel(bmp2);

            Console.WriteLine($"Before: {before}");
            Console.WriteLine($"After: {after}");

            Assert.That(after.IsLighterThan(before));
        }
コード例 #19
0
ファイル: Scatter.cs プロジェクト: usikpavel/ScottPlot
        public void Test_Scatter_MarkerShape()
        {
            var plt = new ScottPlot.Plot();

            // start with default settings
            double[] xs   = { 1, 2, 3, 4 };
            double[] ys   = { 1, 4, 9, 16 };
            var      splt = new ScatterPlot(xs, ys)
            {
                MarkerSize  = 20,
                MarkerShape = MarkerShape.filledCircle
            };

            plt.Add(splt);
            var bmp1 = TestTools.GetLowQualityBitmap(plt);

            // change the plottable
            splt.MarkerShape = MarkerShape.openCircle;
            var bmp2 = TestTools.GetLowQualityBitmap(plt);

            // measure what changed
            //TestTools.SaveFig(bmp1, "1");
            //TestTools.SaveFig(bmp2, "2");
            var before = new MeanPixel(bmp1);
            var after  = new MeanPixel(bmp2);

            Console.WriteLine($"Before: {before}");
            Console.WriteLine($"After: {after}");

            Assert.That(after.IsLighterThan(before));
        }
コード例 #20
0
ファイル: AntiAliasing.cs プロジェクト: yongmingxia/ScottPlot
        public void Test_AntiAliasing_Works()
        {
            var plt = new ScottPlot.Plot(400, 300);

            plt.AddSignal(ScottPlot.DataGen.Sin(51), label: "sin");
            plt.AddSignal(ScottPlot.DataGen.Cos(51), label: "cos");
            plt.YLabel("Vertical Axis");
            plt.XLabel("Horizontal Axis");
            plt.Title("Plot Title");
            plt.Legend();

            // start with default settings
            var bmp1 = plt.Render(lowQuality: true);

            // change the plottable
            var bmp2 = plt.Render(lowQuality: false);

            // measure what changed
            //TestTools.SaveFig(bmp1, "1");
            //TestTools.SaveFig(bmp2, "2");

            var before = new MeanPixel(bmp1);
            var after  = new MeanPixel(bmp2);

            Assert.That(after.IsDifferentThan(before));
        }
コード例 #21
0
ファイル: Scatter.cs プロジェクト: usikpavel/ScottPlot
        public void Test_Scatter_LineWidth()
        {
            var plt = new ScottPlot.Plot();

            // start with default settings
            double[] xs   = { 1, 2, 3, 4 };
            double[] ys   = { 1, 4, 9, 16 };
            double[] xErr = { .15, .15, .5, .5 };
            double[] yErr = { .5, .5, 1, 1 };
            var      splt = new ScatterPlot(xs, ys, xErr, yErr)
            {
            };

            plt.Add(splt);
            var bmp1 = TestTools.GetLowQualityBitmap(plt);

            // change the plottable
            splt.LineWidth += 1;
            var bmp2 = TestTools.GetLowQualityBitmap(plt);

            // measure what changed
            //TestTools.SaveFig(bmp1, "1");
            //TestTools.SaveFig(bmp2, "2");
            var before = new MeanPixel(bmp1);
            var after  = new MeanPixel(bmp2);

            Console.WriteLine($"Before: {before}");
            Console.WriteLine($"After: {after}");

            Assert.That(after.IsDarkerThan(before));
        }
コード例 #22
0
        public void Test_Scatter_Highlight()
        {
            var plt = new ScottPlot.Plot();

            plt.AntiAlias(false, false, false);

            // start with default settings
            double[] xs   = { 1, 2, 3, 4 };
            double[] ys   = { 1, 4, 9, 16 };
            var      splt = new PlottableScatterHighlight(xs, ys)
            {
            };

            plt.Add(splt);
            var bmp1 = new System.Drawing.Bitmap(plt.GetBitmap(renderFirst: true));

            // change the plottable
            splt.HighlightPointNearest(2.1, 4.1);
            var bmp2 = new System.Drawing.Bitmap(plt.GetBitmap(renderFirst: true));

            // measure what changed
            //TestTools.SaveFig(bmp1, "1");
            //TestTools.SaveFig(bmp2, "2");
            var before = new MeanPixel(bmp1);
            var after  = new MeanPixel(bmp2);

            Console.WriteLine($"Before: {before}");
            Console.WriteLine($"After: {after}");

            Assert.That(after.IsDarkerThan(before));
        }
コード例 #23
0
ファイル: Arrow.cs プロジェクト: Jmerk523/ScottPlot
        public void Test_Arrow_PixelOffset()
        {
            var plt = new ScottPlot.Plot(400, 300);

            plt.AddPoint(1, 2, size: 20);
            plt.AddPoint(3, 4, size: 20);

            // initial plot
            var arrow = plt.AddArrow(1, 2, 3, 4);

            plt.Margins(.5, .5);
            var bmp1 = TestTools.GetLowQualityBitmap(plt);

            // adjust something
            arrow.PixelOffsetX = 20;
            arrow.PixelOffsetY = -20;
            var bmp2 = TestTools.GetLowQualityBitmap(plt);

            // measure what changed
            //TestTools.SaveFig(bmp1, "1");
            //TestTools.SaveFig(bmp2, "2");
            var before = new MeanPixel(bmp1);
            var after  = new MeanPixel(bmp2);

            Assert.That(after.IsDifferentThan(before));
        }
コード例 #24
0
        public void Test_Scatter_ChangeErrorData()
        {
            var plt = new ScottPlot.Plot();

            plt.AntiAlias(false, false, false);

            // start with default settings
            double[] xs   = { 1, 2, 3, 4 };
            double[] ys   = { 1, 4, 9, 16 };
            double[] xErr = { .15, .15, .5, .5 };
            double[] yErr = { .5, .5, 1, 1 };
            var      splt = new PlottableScatter(xs, ys, xErr, yErr)
            {
            };

            plt.Add(splt);
            var bmp1 = new System.Drawing.Bitmap(plt.GetBitmap(renderFirst: true));

            // change the plottable
            splt.errorX[0] += .1;
            splt.errorY[0] += .1;
            var bmp2 = new System.Drawing.Bitmap(plt.GetBitmap(renderFirst: true));

            // measure what changed
            //TestTools.SaveFig(bmp1, "1");
            //TestTools.SaveFig(bmp2, "2");
            var before = new MeanPixel(bmp1);
            var after  = new MeanPixel(bmp2);

            Console.WriteLine($"Before: {before}");
            Console.WriteLine($"After: {after}");

            Assert.That(after.IsDarkerThan(before));
        }
コード例 #25
0
        public void Test_ScaleBar_Default()
        {
            var plt = new ScottPlot.Plot();

            plt.AntiAlias(false, false, false);

            // start plot without scalebar
            plt.PlotSignal(DataGen.Sin(51));
            plt.PlotSignal(DataGen.Cos(51));
            var bmp1 = new System.Drawing.Bitmap(plt.GetBitmap(renderFirst: true));

            // add a scalebar
            var sb = new PlottableScaleBar()
            {
                Width           = 5,
                Height          = .25,
                VerticalLabel   = "5 V",
                HorizontalLabel = "250 ms"
            };

            plt.Add(sb);
            var bmp2 = new System.Drawing.Bitmap(plt.GetBitmap(renderFirst: true));

            // measure what changed
            //TestTools.SaveFig(bmp1, "1");
            //TestTools.SaveFig(bmp2, "2");
            var before = new MeanPixel(bmp1);
            var after  = new MeanPixel(bmp2);

            Console.WriteLine($"Before: {before}");
            Console.WriteLine($"After: {after}");

            Assert.That(after.IsDarkerThan(before));
        }
コード例 #26
0
ファイル: Bar.cs プロジェクト: Jmerk523/ScottPlot
        public void Test_Bar_NegativeColor()
        {
            var plt = new ScottPlot.Plot();

            // start with default settings
            double[] ys  = new double[] { 1, -3, 2, -4 };
            var      bar = new BarPlot(null, ys, null, null)
            {
                FillColor = System.Drawing.Color.Gray
            };

            plt.Add(bar);
            var bmp1 = TestTools.GetLowQualityBitmap(plt);

            // change the plottable
            bar.FillColorNegative = System.Drawing.Color.Black;
            var bmp2 = TestTools.GetLowQualityBitmap(plt);

            // measure what changed
            //TestTools.SaveFig(bmp1, "1");
            //TestTools.SaveFig(bmp2, "2");
            var before = new MeanPixel(bmp1);
            var after  = new MeanPixel(bmp2);

            Console.WriteLine($"Before: {before}");
            Console.WriteLine($"After: {after}");

            Assert.That(after.IsDarkerThan(before));
        }
コード例 #27
0
ファイル: Annotation.cs プロジェクト: yongmingxia/ScottPlot
        public void Test_Annotation_ShadowColor()
        {
            var plt = new ScottPlot.Plot(400, 300);

            // start with default settings
            var pa = new ScottPlot.Plottable.Annotation()
            {
                Label = "Hello", X = 10, Y = 10
            };

            plt.Add(pa);
            var bmp1 = TestTools.GetLowQualityBitmap(plt);

            // change the plottable
            pa.ShadowColor = System.Drawing.Color.Black;
            var bmp2 = TestTools.GetLowQualityBitmap(plt);

            // measure what changed
            //TestTools.SaveFig(bmp1, "1");
            //TestTools.SaveFig(bmp2, "2");
            var before = new MeanPixel(bmp1);
            var after  = new MeanPixel(bmp2);

            Console.WriteLine($"Before: {before}");
            Console.WriteLine($"After: {after}");

            Assert.That(after.IsDarkerThan(before));
        }
コード例 #28
0
ファイル: Bar.cs プロジェクト: Jmerk523/ScottPlot
        public void Test_Bar_BarWidth()
        {
            var plt = new ScottPlot.Plot();

            // start with default settings
            double[] ys  = new double[] { 1, 3, 2, 4 };
            var      bar = new BarPlot(null, ys, null, null)
            {
            };

            plt.Add(bar);
            var bmp1 = TestTools.GetLowQualityBitmap(plt);

            // change the plottable
            bar.BarWidth += .1;
            var bmp2 = TestTools.GetLowQualityBitmap(plt);

            // measure what changed
            //TestTools.SaveFig(bmp1, "1");
            //TestTools.SaveFig(bmp2, "2");
            var before = new MeanPixel(bmp1);
            var after  = new MeanPixel(bmp2);

            Console.WriteLine($"Before: {before}");
            Console.WriteLine($"After: {after}");

            Assert.That(after.IsDarkerThan(before));
        }
コード例 #29
0
        public void Test_Text_FontSize()
        {
            var plt = new ScottPlot.Plot();

            plt.AntiAlias(false, false, false);

            // start with default settings
            var txt = new PlottableText()
            {
                text = "hello", FontSize = 12
            };

            plt.Add(txt);
            var bmp1 = new System.Drawing.Bitmap(plt.GetBitmap(renderFirst: true));

            // change the plottable
            txt.FontSize = 36;
            var bmp2 = new System.Drawing.Bitmap(plt.GetBitmap(renderFirst: true));

            // measure what changed
            //TestTools.SaveFig(bmp1, "1");
            //TestTools.SaveFig(bmp2, "2");
            var before = new MeanPixel(bmp1);
            var after  = new MeanPixel(bmp2);

            Console.WriteLine($"Before: {before}");
            Console.WriteLine($"After: {after}");

            Assert.That(after.IsDarkerThan(before));
        }
コード例 #30
0
        public void Test_Annotation_ChangingText()
        {
            var plt = new ScottPlot.Plot(400, 300);

            // start with default settings
            var pa = new ScottPlot.Plottable.Annotation()
            {
                label = "Hello", xPixel = 10, yPixel = 10, FontSize = 36
            };

            plt.Add(pa);
            var bmp1 = TestTools.GetLowQualityBitmap(plt);

            // change the plottable
            pa.label += "World";
            var bmp2 = TestTools.GetLowQualityBitmap(plt);

            // measure what changed
            //TestTools.SaveFig(bmp1, "1");
            //TestTools.SaveFig(bmp2, "2");
            var before = new MeanPixel(bmp1);
            var after  = new MeanPixel(bmp2);

            Console.WriteLine($"Before: {before}");
            Console.WriteLine($"After: {after}");

            Assert.That(after.IsDarkerThan(before));
        }