public void Test_AutoAxis_ShrinkWhenNeeded() { var plt = new ScottPlot.Plot(); // small area plt.AddLine(-5, -5, 5, 5); plt.AxisAuto(); var limitsA = plt.GetAxisLimits(); Console.WriteLine($"limits A: {limitsA}"); // expand to large area plt.SetAxisLimits(-123, 123, -123, 123); var limitsB = plt.GetAxisLimits(); Console.WriteLine($"limits B: {limitsB}"); // shrink back to small area plt.AxisAuto(); var limitsC = plt.GetAxisLimits(); Console.WriteLine($"limits C: {limitsC}"); Assert.That(limitsB.XMin < limitsA.XMin); Assert.That(limitsB.XMax > limitsA.XMax); Assert.That(limitsB.YMin < limitsA.YMin); Assert.That(limitsB.YMax > limitsA.YMax); Assert.That(limitsB.XMin < limitsC.XMin); Assert.That(limitsB.XMax > limitsC.XMax); Assert.That(limitsB.YMin < limitsC.YMin); Assert.That(limitsB.YMax > limitsC.YMax); }
public void Test_Axis_ExtremelySmallSpan() { var plt = new ScottPlot.Plot(600, 400); plt.AddLine(0, 1, 1, 1.0000000000000001); plt.Render(); }
public void Test_AutoAxis_ExpandXY() { var plt = new ScottPlot.Plot(); // small area plt.AddLine(-5, -5, 5, 5); plt.AxisAuto(); var limitsA = plt.GetAxisLimits(); // large area plt.AddLine(-99, -99, 99, 99); plt.AxisAuto(); var limitsB = plt.GetAxisLimits(); Assert.That(limitsB.XMin < limitsA.XMin); Assert.That(limitsB.XMax > limitsA.XMax); Assert.That(limitsB.YMin < limitsA.YMin); Assert.That(limitsB.YMax > limitsA.YMax); }
public void Test_PolygonVsScatter_Alignment() { double[] xs = { 75, 250, 280, 100 }; double[] ys = { -100, -75, -200, -220 }; var plt = new ScottPlot.Plot(320, 240); plt.AddPolygon(xs, ys, fillColor: Color.LightGreen); plt.AddLine(xs[0], ys[0], xs[1], ys[1], Color.Blue); plt.Grid(false); plt.Frame(false); plt.XAxis.Ticks(false); plt.YAxis.Ticks(false); plt.Title("Line/Scatter"); TestTools.SaveFig(plt); }