Interactive plotting library for .NET
MIT License
Bot releases are visible (Hide)
Published by swharden over 4 years ago
Published on NuGet on 2020-03-29
Version-specific cookbook: http://swharden.com/scottplot/cookbook
PlotBar()
now supports displaying values above each bar graph by setting the showValues
argument.PlotPopulations()
has extensive capabilities for plotting grouped population data using box plots, bar plots, box and whisper plots, scatter data with distribution curves, and more! See the cookbook for details. (#315)Histogram
objects now have a population
property.PopulationStats
has been renamed to Population
and has additional properties and methods useful for reporting population statistics.Published by swharden over 4 years ago
Published on NuGet on 2020-03-27
Version-specific cookbook: http://swharden.com/scottplot/cookbook
Plot.Clear()
has been improved to more effectively clear plottable objects. Various overloads are provided to selectively clear or preserve certain plot types. (#275) Thanks @StendProg
PlotBar()
now supports horizontal bar graphs (#277, #315) Thanks @bonzaiferroni
PlotBar()
has been lightly refactored. Argument order has been adjusted, and additional options have been added. Error cap width is now in fractional units instead of pixel units. (#315)Published by swharden over 4 years ago
Published on NuGet on 2020-03-23
Version-specific cookbook: http://swharden.com/scottplot/cookbooks/4.0.23/
ScottPlot.WpfPlotViewer(plt)
for WPFScottPlot.FormsPlotViewer(plt)
for Windows FormsySpacing
argument of Plot.Grid()
Plot.Add()
makes it easy to add a custom Plottable
to the plotPlot.XLabels()
and Plot.YLabels()
can now accept just a string array (x values are auto-populated as a consecutive series of numbers).Plot.AxisAuto()
to Plot.AutoAxis()
and Plot.AutoScale()
to make this function easier to locate for users who may have experience with other plot libraries. (#309) Thanks @Resonanz
plt.PlotErrorBars()
. (#316) Thanks @zrolfs
logScaleX
and logScaleY
arguments of plt.Ticks()
methodPlot.AxisZoom()
Plot.Grid()
methodPublished by swharden over 4 years ago
Published on NuGet on 2020-03-16
Version-specific cookbook: http://swharden.com/scottplot/cookbooks/4.0.22/
Plot.EqualAxis
property to make it easy to lock axis scales together (#306) Thanks @StendProg
Published by swharden over 4 years ago
Published on NuGet on 2020-03-14
Version-specific cookbook: http://swharden.com/scottplot/cookbooks/4.0.21/
FormsPlot.MouseMoved
event now has MouseEventArgs
(instead of EventArgs
). The purpose of this was to make it easy to access mouse pixel coordinates via e.X
and e.Y
, but this change may require modifications to applications which use the old event signature.AxisChanged
event (like FormsPlot)Plot.CoordinateFromPixelY()
to return incorrect valueDataGen.Zeros()
and DataGen.Ones()
to generate arrays filled with values using methods familiar to numpy users.equalAxes
argument to WpfPlot.Configure()
(#272)equalAxes
argument in FormsPlot.Configure()
(#272)Plot.Axis
methods return axis limits as double[]
(previously many of them returned void
)Plot.PlotLine()
which accepts a slope, offset, and start and end X points to make it easy to plot a linear line with known formula. Using PlotFormula() will produce the same output, but this may be simpler to use for straight lines.rSquared
property to linear regression fits (#290) Thanks @Benny121221 and @StendProg
Tools.ConvertPolarCoordinates()
to make it easier to display polar data on ScottPlot's Cartesian axes (#298) Thanks @Benny121221
Plot.Function()
(#243) Thanks @Benny121221
Plot.SetCulture()
to let the user define number and date formatting rather than relying on pre-made cultures (#301, #236) Thanks @SeidChr
Published by swharden over 4 years ago
Published on NuGet on 2020-02-29
ScottPlot.Plot
ModuleCoordinateFromPixelX()
and CoordinateFromPixelY()
to get double precision coordinates from a pixel location. Previously only SizeF (float) precision was available. This improvement is especially useful when using DateTime axes. (#269) Thanks Chris
AxisScale()
to adjust axis limits to set a defined scale (units per pixel) for each axis.AxisEqual()
to adjust axis limits to set the scale of both axes to be the same regardless of the size of each axis. (#272) Thanks @gberrante
PlotHSpan()
and PlotVSpan()
now return PlottableHSpan
and PlottableVSpan
objects (instead of a PlottableAxSpan
with a vertical
property)PlotHLine()
and PlotVLine()
now return PlottableHLine
and PlottableVLine
objects (instead of a PlottableAxLine
with a vertical
property)GetSubplot()
method which returns the Plot from a row and column index (#242). See cookbook for details. Thanks @Resonanz and @StendProg
DataGen.Range()
to make it easy to create double arrays with evenly spaced data (#259)Published by swharden over 4 years ago
Published on NuGet on 2020-02-06
mouseCoordinates
property to user controls (#235) Thanks @bukkideme
Published by swharden over 4 years ago
Published on NuGet on 2020-02-02
ySpacing
argument in Plot.Grid()
(#221) @Thanks teejay-87
visible
argument in Title()
, XLabel()
, and YLabel()
(#222) Thanks @ckovamees
Clear()
argumentDataGen.Cos()
Ticks()
argument (#223) Thanks @ckovamees
Published by swharden over 4 years ago
Published on NuGet on 2020-01-23
MatchAxis()
and MatchLayout()
(#217) Thanks @ckovamees and @StendProg
Published by swharden over 4 years ago
Published on NuGet on 2020-01-20
Published by swharden almost 5 years ago
Published on NuGet on 2020-01-19
maxRenderIndex
to Signal to allow partial plotting of large arrays intended to be used with live, incoming data (#202) Thanks @StendProg and @plumforest
SaveFig()
is called before the image is properly sized (#192) Thanks @karimshams and @StendProg
FontName
and FontSize
(#204) Thanks Clay
plt.PlotArrow()
(#201) Thanks Clay
cursor
property which can be set to allow custom cursors. (#187) Thanks @gobikulandaisamy
mouseCoordinates
property which make it easy to get the X/Y location of the cursor. (#187) Thanks @gobikulandaisamy
Published by swharden almost 5 years ago
Published on NuGet on 2019-12-03
Published by swharden almost 5 years ago
Published on NuGet on 2019-12-01
Published by swharden almost 5 years ago
Published on NuGet on 2019-11-27
fixedLineWidth
to Legend() to allow the user to control whether legend lines are dynamically sized (#185) Thanks @ab-tools
Published by swharden almost 5 years ago
Published on NuGet on 2019-11-24
Published by swharden almost 5 years ago
Published on NuGet on 2019-11-23
Tools.DateTimesToDoubles(DateTime[] array)
to easily convert an array of dates to doubles which can be plotted with ScottPlot, then displayed as time using plt.Ticks(dateTimeX: true)
.Published by swharden almost 5 years ago
Published on NuGet on 2019-11-09
ScottPlot.MultiPlot()
as seen in the Multiplot example in the cookbookScottPlot.DataGen
functions which require a Random
can accept null (they will create a Random
if null is given)plt.MatchAxis()
and plt.MatchLayout()
have been improvedplt.PlotText()
now supports rotated text using the rotation
argument (#160). See the cookbook example. Thanks @gwilson9
ScottPlot.WinForms
user control has new events and formsPlot1.Configure()
arguments to make it easy to replace the default functionality for double-clicking and deploying the right-click menu (#166). Thanks @FadyDev2
visible
property which makes it easy to toggle visibility on/off after they've been plotted. See the cookbook example. Thanks Nasser
Published by swharden almost 5 years ago
Published on NuGet on 2019-11-03
plt.Ticks()
(Thanks @citizen3942)plt.MatchLayout()
no longer throws exceptionsMouseTracker
class (tracking is now in user controls)Published by swharden about 5 years ago
Published on NuGet on 2019-10-20
ScottPlotUC
ToolboxItem
and DesignTimeVisible
delegates to WpfPlot control to try to get it to appear in the toolbox (but it doesn't seem to be working)AxesChanged
event to user control to make it easier to sync axes between multiple plots (see linked plots demo)Published by swharden about 5 years ago
Published on NuGet on 2019-10-06