Interactive plotting library for .NET
MIT License
Bot releases are hidden (Show)
Published by swharden almost 4 years ago
Published on NuGet on 2020-12-11
cookbook: http://swharden.com/scottplot/cookbook
⚠️ This is a pre-release version of ScottPlot. It is largely functional, but be aware that its API will continue to evolve and that it is more likely to have undiscovered bugs than the stable branch.
Published by swharden almost 4 years ago
Published on NuGet on 2020-12-11
cookbooks: http://swharden.com/scottplot/cookbook
demos: https://swharden.com/scottplot/demo
xOffset
Published by swharden almost 4 years ago
Published on NuGet on 2020-11-22
cookbook: http://swharden.com/scottplot/cookbook
demo: https://swharden.com/scottplot/demo
Published by swharden about 4 years ago
Published on NuGet on 2020-09-27
cookbook: http://swharden.com/scottplot/cookbook
demo: https://swharden.com/scottplot/demo
Published by swharden about 4 years ago
Published on NuGet on 2020-09-26
cookbook: http://swharden.com/scottplot/cookbook
demo: https://swharden.com/scottplot/demo
Published by swharden about 4 years ago
Published on NuGet on 2020-09-20
cookbook: http://swharden.com/scottplot/cookbook
demo: https://swharden.com/scottplot/demo
Published by swharden about 4 years ago
Published on NuGet on 2020-08-09
cookbook: http://swharden.com/scottplot/cookbook
demo: https://swharden.com/scottplot/demo
Configure()
method of user controls now has a lowQualityAlways
argument to let the user easily enable/disable anti-aliasing at the control level. Previously this was only configurable by reaching into the control's plot object and calling its AntiAlias()
method. (#499) Thanks @RachamimYaakobov
Published by swharden over 4 years ago
Published on NuGet on 2020-07-6
cookbook: http://swharden.com/scottplot/cookbook
demo: https://swharden.com/scottplot/demo
Plot.PlotFillAboveBelow()
rendering of data with a non-zero baseline (#477) Thanks @el-aasi
Plot.PlotWaterfall()
for easy creation of waterfall-style bar plots (#463, #476) Thanks @Benny121221
Plot.Ticks()
with base
and prefix
arguments, allowing axes that display binary (e.g., 0b100110
) or hexadecimal (eg., 0x4B0D10
) tick labels (#469, #457) Thanks @Benny121221
PlotBar()
to facilitate customization of text displayed above bars when showValue
is enabled (#483) Thanks @WillemWever
Colorset
module has been created to better define this behavior, and Plot.Colorset()
makes it easy to plot data using alternative colorsets. (#481)Plot.Remove()
method to make it easier to specifically remove an individual plottable after it has been plotted. Plot.Clear()
is similar, but designed to remove classes of plot types rather than a specific plot object. (#479) Thanks @cstyx and @Resonanz
minRenderIndex
(in addition to the already-supported maxRenderIndex
) to facilitate partial display of large arrays (#474) Thanks @Benny121221
Published by swharden over 4 years ago
Published on NuGet on 2020-06-22
cookbook: http://swharden.com/scottplot/cookbook
demo: https://swharden.com/scottplot/demo
net472
(while still supporting net461
and netcoreapp3.0
) to produce a build folder with just 3 DLLs (compared to over 100 when building with .NET Framework 4.6.1) (#330)Published by swharden over 4 years ago
Published on NuGet on 2020-06-21
cookbook: http://swharden.com/scottplot/cookbook
demo: https://swharden.com/scottplot/demo
PlotSignal()
and PlotSignalXY()
plots now have an optional useParallel
argument (and public property on the objects they return) to allow the user to decide whether parallel or sequential calculations will be performed. (#454, #419, #245, #72) Thanks @StendProg
Statistics.Interpolation
module to generate smooth interpolated splines from a small number of input data points. See advanced statistics cookbook example for usage information. (#459) Thanks Hans-Peter Moser
Drawing.Colormaps
module which has over a dozen colormaps for easily converting a fractional value to a color for use in plotting or heatmap displays (#457, #458) Thanks @Benny121221
Plot.Clear()
to accept any Plottable
as an argument, and all Plottable
objects of the same type will be cleared (#464) Thanks @imka-code
Published by swharden over 4 years ago
Published on NuGet on 2020-06-09
cookbook: http://swharden.com/scottplot/cookbook
demo: https://swharden.com/scottplot/demo
processEvents
argument to formsPlot2.Render()
to provide a performance enhancement when linking axes of two FormsPlot
controls together (by calling Plot.MatchAxis()
from the control's AxesChanged
event, as seen in the Linked Axes demo application) (#451, #452) Thanks @StendProg and @robokamran
Plot.PlotVectorField()
method for displaying vector fields (sometimes called quiver plots) (#438, #439, #440) Thanks @Benny121221 and @hhubschle
PlotScatterHighlight()
was created as a type of scatter plot designed specifically for applications where "show value on hover" functionality is desired. Examples are both in the cookbook and WinForms and WPF demo applications. (#415, #414) Thanks @Benny121221 and @StendProg
PlotRadar()
is a new plot type for creating Radar plots (also called spider plots or star plots). See cookbook and demo application for examples. (#428, #430) Thanks @Benny121221
PlotPlolygons()
is a new performance-optimized variant of PlotPolygon()
designed for displaying large numbers of complex shapes (#426) Thanks @StendProg
Configure()
now has a showCoordinatesTooltip
argument to continuously display the position at the tip of the cursor as a tooltip (#410) Thanks @jcbeppler
Plot.PlotBar()
now has an autoAxis
argument (which defaults true
) that automatically adjusts the axis limits so the base of the bar graphs touch the edge of the plot area. (#406)plt.PlotPie()
. See cookbook and demo application for examples. (#421, #423) Thanks @Benny121221
ScottPlot.FormsPlotViewer(Plot)
no longer resets the new window's plot to the default style (#416) Thanks @StendProg
recalculateLayoutOnMouseUp
option to prevent resetting of manually-defined data area padding (#449) Thanks @ismdiego
Published by swharden over 4 years ago
Published on NuGet on 2020-05-18
cookbook: http://swharden.com/scottplot/cookbook
demo: https://swharden.com/scottplot/demo
PlotSignalXY()
by not rendering markers when zoomed very far out (#402) Thanks @gobikulandaisamy
LineStyle
property. This modification improves grid line rendering and increases performance for most types of plots. (#401, #327) Thanks @bukkideme and @citizen3942
Published by swharden over 4 years ago
Published on NuGet on 2020-05-18
Version-specific cookbook: http://swharden.com/scottplot/cookbook
System.Drawing
that may cause diagonal line artifacts to appear when the user controls were panned or zoomed. (#401, #327) Thanks @bukkideme and @citizen3942
Published by swharden over 4 years ago
Published on NuGet on 2020-05-17
Version-specific cookbook: http://swharden.com/scottplot/cookbook
GetMouseCoordinates()
method which returns the DPI-aware position of the mouse in graph coordinates (#379, #380) Thanks @Benny121221
PlotSignalXY()
method for high-speed rendering of signal data that has unevenly-spaced X coordinates (#374, #375) Thanks @StendProg and @LogDogg
Tools.Log10()
to return 0
instead of NaN
, improving automatic axis limit detection (#376, #377) Thanks @Benny121221
Plot.AxisAutoX()
and Plot.AxisAutoY()
(#382)Configure()
method of FormsPlot and WpfPlot controls now have middleClickMarginX
and middleClickMarginY
arguments which define horizontal and vertical auto-axis margin used for middle-clicking. Setting horizontal margin to 0 is typical when plotting signals. (#383)Plot.Grid()
and Plot.Ticks()
now have a snapToNearestPixel
argument which controls whether these lines appear anti-aliased or not. For static images non-anti-aliased grid lines and tick marks look best, but for continuously-panning plots anti-aliased lines look better. The default behavior is to enable snapping to the nearest pixel, consistent with previous releases. (#384)double.NaN
#396Published by swharden over 4 years ago
Published on NuGet on 2020-05-05
Version-specific cookbook: http://swharden.com/scottplot/cookbook
Plot.PlotBarGroups()
for easier construction of grouped bar plots from 2D data (#367) Thanks @Benny121221
Published by swharden over 4 years ago
Published on NuGet on 2020-05-03
Version-specific cookbook: http://swharden.com/scottplot/cookbook
Plot.PlotCandlestick()
and Plot.PlotOHLC()
OHLC
objects with variable widths defined with a new timeSpan
argument in the OHLC constructor. (#346) Thanks @Minu476
sequential
argument to plot data based on array index rather than OHLC.time
. This is a new, simpler way to display unevenly-spaced data (e.g., gaps over weekends) in a way that makes the gaps invisible. (#346) Thanks @Minu476
Configure(enableRightClickMenu: false)
in WPF and WinForms user controls. (#365) Thanks @thunderstatic
Configure(enableScrollWheelZoom: false)
to disable middle-click-drag zooming. (#365) Thanks @eduhza
Published by swharden over 4 years ago
Published on NuGet on 2020-04-11
Version-specific cookbook: http://swharden.com/scottplot/cookbook
Plot.PlotFill()
can be used to make scatter plots with shaded regions. Giving it a single pair of X/Y values (xs, ys
) lets you shade beneath the curve to the baseline
value (which defaults to 0). You can also give it a pair of X/Y values (xs1, ys1, xs2, ys2
) and the area between the two curves will be shaded (the two curves do not need to be the same length). See cookbook for examples. (#255) Thanks @ckovamees
DataGen.Range()
now has includeStop
argument to include the last value in the returned array.Tools.Pad()
has been created to return a copy of a given array padded with data values on each side. (#255) Thanks @ckovamees
Plot.Style(Style.Seaborn)
(#339)enableZooming
argument in WpfPlot.Configure()
and FormsPlot.Configure()
has been replaced by two arguments enableRightClickZoom
and enableScrollWheelZoom
(#338) Thanks Zach
Plot.PlotFillAboveBelow()
to create a shaded line plot with different colors above/below the baseline. (#255) Thanks @ckovamees
Published by swharden over 4 years ago
Published on NuGet on 2020-04-07
Version-specific cookbook: http://swharden.com/scottplot/cookbook
Ticks()
now has arguments for numericStringFormat (X and Y) to make it easy to customize formatting of tick labels (percentage, currency, scientific notation, etc.) using standard numeric format strings. Example use is demonstrated in the cookbook. (#336) Thanks @deiruch
FormsPlot.ContextMenuStrip
or WpfPlot.ContextMenu
. Demonstrations of both are in the demo application. (#337) Thanks @Antracik
Published by swharden over 4 years ago
Published on NuGet on 2020-04-05
Version-specific cookbook: http://swharden.com/scottplot/cookbook
Plot.Polygon()
can now be used to plot polygons from X/Y points (#255) Thanks @ckovamees
Plot.Annotation()
allows for the placement of text on the figure using pixel coordinates (not unit coordinates on the data grid). This is useful for creating custom static labels or information messages. (#321) Thanks @SeidChr
FormsPlot.MouseDoubleClicked
event now passes a proper MouseEventArgs
instead of null
(#331) Thanks @ismdiego
WpfPlot
with items (save image, copy image, open in new window, help, etc.) similar to FormsPlot
Published by swharden over 4 years ago
Published on NuGet on 2020-04-04
Version-specific cookbook: http://swharden.com/scottplot/cookbook
ScottPlot.WPF
package (which provides the WpfPlot
user control) now targets .NET Framework 4.7.2 (in addition to .NET Core 3.0), allowing it to be used in applications which target either platform. The ScottPlot demo application now targets .NET Framework 4.7.2 which should be easier to run on most Windows systems. (#333)ScottPlot.WinForms
package (which produves the FormsPlot
control) now only targets .NET Framework 4.6.1 and .NET Core 3.0 platforms (previously it also had build targets for .NET Framework 4.7.2 and .NET Framework 4.8). It is important to note that no functionality was lost here. (#330, #333)