Licensed users should sign up for the
to receive instructions for downloading the free upgrade, or select Check for Updates
on the Help menu within DPlot.
Green entries are programming issues, generally concerning
DPLOTLIB.DLL and/or the Excel Add-In.
17 May, 2013
- Added ability to make more than 2 passes with the Filter command. This
might be useful for very noisy data.
- Added candlestick chart option to Open-High-Low-Close (OHLC) charts.
- Added a "Number of points" option to the "List Peaks" function.
- Bug fix: The recent ATAN2 option for the Z3=f(Z1,Z2) command
worked correctly for points on a rectangular grid, but not at all for randomly-spaced points.
- Bug fix: Curve labels might had added uneccessary white space to the right
side of a plot.
- Bug fix: With 2D views of contour plots of randomly-spaced 3D points, the legend might have been clipped in a copied bitmap produced by
- Bug fix: The "More Curve Fits" function might have crashed with some equation forms if you selected a curve to fit that contained
a single data point. In this release those "curves" are not selectable.
- Bug fix: Since version 188.8.131.52 there has been a rather obscure bug when using any of the Generate menu commands that result in a new document
(FFT or Histogram, for example). If the original document contained any notes
and you performed any operation on the generated document's data, then the Undo function did not work properly. Generally on a Redo all X and
Y values were set to 0's.
- Bug fix: DPlot crashed when zooming in, then out, with the mouse wheel while pressing the CTRL key (restricting zooming to the X direction) if
the plot included multiple Y axes.
- Expanded the FORTRAN DPLOTLIB examples to perform many more functions. Currently this has been done for
WATCOM, g77, and Silverfrost (formerly Salford) examples. Others may follow in a future release. (If you use Absoft or Compaq/Intel FORTRAN,
please contact me.)
- The ZGrid command of the Excel Add-In is now much more efficient when you simply select column headings rather than
the rectangle containing your data. And it now will correctly interpret evenly-spaced Y values when you select column headings
and send the data to DPlot as points on a rectangular grid, rather than randomly-spaced points. This is important if your goal is to
produce 3D bar charts.
17 March 2013
- Added Open-High-Low-Close (OHLC) chart option. This is primarily useful
for those tracking stock prices.
- Added X=f(T), Y=g(T), Z=h(T) command on the Generate menu, which allows
you to generate points in a 3D scatter plot with X, Y, and Z all a user-defined function of a fourth independent parameter T.
- Added entries for the SAE J211 CFC filters to the
Filter command on the Edit menu. This is mostly a matter of convenience
to those who crash cars for a living: the filter coefficents are defined
- Modified the MultipleXAxes and
MultipleYAxes commands so that they will accept an equation
- Extents for scales using "Calendar Date" number formatting are now rounded to the nearest integer (nearest day). Though technically correct
before, previous versions were visually confusing if, for example, the low extent was at some time other than midnight since the time was
- The setup program now copies examples.xls to the DPlot folder below your "My Documents" folder.
- Bug fix: Previous versions of the Excel Add-In for DPlot might have caused 64-bit Excel 2013 to crash (after successfully creating a plot).
- Bug fix: Changing colors in an XY plot (with no other changes) did not result in prompting you to save the plot when it was closed.
- Bug fix: If you erased a hidden curve, the hidden flag was not reset. If you then performed some operation that created a new curve (which
filled the slot occupied by the previously erased curve), the new curve was hidden.
- Bug fix: The plugin examples contained the wrong header file DPLOT.H.
25 January 2013
- Updated the Garmin GPX file import plugin to import heartrate information stored between <gpxtpx:hr> tags. This includes Nike+ files exported
as GPX and possibly other devices. If you have a GPS device that records heartrate and exports to GPX but heartrate is not
supported by this plugin, of course let us know.
- Added AxisArrowheads macro/DDE command.
- Added ATAN2 operator to the Z3=f(Z1,Z2) command on the Generate
menu for 3D surfaces.
- DPlot files opened by double-clicking in Explorer or dragging-and-dropping on to the DPlot window now reset the default folder for opening
files in the same way that the File>Open menu command works. In particular this might make a difference for you when
using the Directory(1) macro command.
- Bug fix: A SelectCurve command prior to an EditSmooth
command did nothing. Generally every curve on the plot would be smoothed.
- Bug fix: Version 184.108.40.206's change allowing you to print multiple plots with the placement determined by the order the plots were selected in
was not implemented correctly, making it difficult to deselect the last plot that was selected.
- Bug fix: In all previous versions if you used a text placeholder for a parameter in a macro command, e.g.
then the equation was replaced by a character string representation of the number with no more than 7 significant figures (identically to how the
default number format works on the coordinate axes). In most cases this was fine, but didn't work so well in the case of date/time groups. For
example 1 October 2012 9:00 PM was evaluated as 41183.88 (9:07:12 PM) rather than the exact 41183.875. In this release up to 16 significant figures
are used in this situation.
- Bug fix: DPlot crashed if every point in one or more curves was outside the limits set with the
Amplitude Limits menu command.
- Bug fix: 2D views of surface plots were not printed correctly if either the X or Y scale factors were negative.
25 September 2012
- Bug fix: On an XY plot if minor grid lines were used on the Y axis and the minor grid lines used a different color than the major grid lines,
DPlot would redraw the major grid lines on the X axis so that they would not be obscured by the minor Y lines. This worked fine unless the X axis used
one of the calendar date formats. In that case the major lines were redrawn at a fixed interval, e.g. 30 days instead of one month. This bug has been
present for over a year but only recently discovered by user PaulT. Thanks, Paul.
- Minor change to reading DPlot files: "Print Caption" is turned off by default and only turned on if the file contains an instruction to do so.
This differs from previous versions that tended to use the setting from the last plot that was opened.
- One user reported a problem with the self-extracting zip file for the DPLOTLIB files that was used for the first time in the version 220.127.116.11. This release
doesn't use a zip file.
23 September 2012
- The distribution now includes a 64-bit version of DPLOTLIB.DLL and 64-bit source code examples in C, C#, and
- If a note that is automatically generated for a vector plot with the "Show color key"
option is removed on the Note dialog, "Show color key" is turned off. In the last
release the note would be regenerated with default options every time you removed it, which was a bit confusing.
- Changed the behavior of the Multiple Plots dialog for printing multiple graphs
on the same page. The order of the plots is now the order in which they are selected. In previous versions the plots were arranged in the order
they were opened or created; selection order was ignored.
- Added the ability to specify the line width and/or symbol size for the mean/median in
Box and Whisker plots, and fixed the
previously-ignored mean line width entry for Dot graphs.
In addition all lines are now drawn with squared off endcaps for a cleaner appearance.
- Added a mask option to the FillBetween macro/DDE command.
This is equivalent to the Copy/Mask radio buttons on the Fill Between Curves dialog.
- The document window caption added with a Caption command is now
used as the default filename for a plot, with the addition of a ".grf" extension. If a user then saves the file, this will be used as the
default filename. (In previous versions the filename would be blank.)
- Added a line and/or symbol drawing to the Legend/Labels dialog that is
updated when the curve index is changed. This should help immediately recognize a curve when the "Curve no." entry is changed.
- Added EditRemoveSpikes macro/DDE command, which performs the same operation as the
Remove Random Spikes command on the Edit menu for 2D data.
- Bug fix: If you used Save Preferences on a plot that included version 18.104.22.168's change allowing a color key on vector plots, then
subsequently used Get Preferences to read those settings with that same or a similar plot that also used that color key feature,
you'd end up with an additional new color key.
- Bug fix: On 2D contour plots for which the legend was not drawn, images copied to the clipboard might have had the right-most
X axis label cropped.
9 September 2012
- Added several new options for vector plots. You can use up to 8 colors
(previous limit was 2), draw a color key, and specify the magnitudes associated with each color. Added an option to the
VectorPlot command to include a heading for the optional color key,
added several new options to the VectorPlotOptions command,
and added a new VectorPlotColors command.
- XY and XYXY
macro/DDE commands will now accept coordinates in the text placeholder form $X(i,j),
$Y(i,j). Previous versions would accept only numbers.
- Added options to the Directory macro/DDE command
that allow you to set the default directory to the last folder used by manual File Open, Append, or Save As commands.
- Modified the behavior of the Histogram and
SwitchX macro/DDE commands so that the active document for
any subsequent macro commands becomes the newly-created document. In the case of SwitchX this only applies to creating a new document.
For macros this change is straightforward:
XAxisLabel("This is a new document")
will result in "This is a new document" being used as the X axis label for the newly-created document. For DDE (i.e. dplotlib.dll
calls to DPlot_Command) it requires a few extra steps. In C:
dwSize = sizeof(szNumber);
DocNum = atoi(szNumber);
DPlot_Command(DocNum,"[XAxisLabel(\"This is a new document\")]");
- Bug fix: Including the "Coefficient of variation" in the Group Summary of 1D plots caused DPlot to crash if the mean of any
group was 0. (Essentially an untrapped divide by 0 error.)
29 July 2012
- Added Replace Data command on the Edit menu and corresponding EditReplaceData
macro/DDE command. This command allows you to replace the data in a destination curve with the data from a source curve, then delete the source curve. This
command is especially useful if you have a saved plot for which one or more curves should be updated. That source curve might be added with
Paste, by generating a curve with
- DPlot will now read up to 4 title lines from CSV and text files at the start of the file. Previous versions were limited to 3 lines.
- DPLOTLIB programming examples are now an optional component of the setup program. In versions 22.214.171.124 and 126.96.36.199 they were automatically installed.
- Bug fix: The FileSaveAs macro command failed when attempting
to save a file to a UNC path.
9 July 2012
- Bug fix: Version 188.8.131.52 attempted to fix a problem with the legend in XY plots being clipped when printed, and it worked well if there
was a legend. If there wasn't, the plot was generally printed too small, making room for a non-existant legend.
1 July 2012
Added support for Delphi for calls to DPLOTLIB.DLL. All code has been provided by Serge Astaf'ev.
Thank you, Serge! DPLOTLIB example programs and source (all supported languages) are now included with the distributions for the full
version of DPlot and may be found in the \DPLOTLIB folder below dplot.exe.
- Added Xmin, Xmax, Ymin, and Ymax to the status bar display for 3D/4D plots. These values are for the visible portion of the plot, which might
have been changed by zooming or by using the Extents/Intervals/Size command.
- Added $VZMIN, $VZMAX, $VZAVG, $VXMIN, $VXMAX, $VYMIN, and $VYMAX text shortcuts.
The latter four correspond to the values mentioned above. The first 3 correspond to the Z values shown in the status bar in previous versions.
- The X values consisting of times are always sequential General Options
setting was previously ignored for data sent to DPlot via DDE (Excel Add-In, for example). So if your input times passed through midnight one or
more times, the plot was a jumbled mess with a maximum extent of 1 day.
- Bug fix: The sequential time setting mentioned above was respected for Copy/Paste operations but was handled incorrectly, with 24 (hours)
added to input values rather than 1 (1 day). This bug came up when adding the Time of day (fractional days)
- Bug fix: If you moved the legend of an XY plot outside the extents of the plot, the legend might get clipped when printed, though there was
plenty of room on the page if the entire plot was shifted in the opposite direction.
- Bug fix: The "Y=A+B*ln(X)+C*(ln(X))^2+..." equation form of the "More Curve Fits" plugin failed for non-positive Y values.
- Bug fix: The Differentiate command flubbed the first X value for the
quadratic method unless Replace existing curves was checked.
8 June 2012
- Better results for saved bitmap images on Windows Vista and later Windows versions.
DPlot now uses a workaround for a Windows problem when saving bitmap images with a positive resolution value. On most
desktop systems Windows correctly reports the physical size of the screen, which is used to scale line widths, symbol
sizes, position for labels, etc. On (at least) Windows 7, Windows reports a very wrong value for that width (for
example a 16 inch wide display is reported as over 26 inches wide). This error resulted in distorted bitmaps saved on
these systems if you used a resolution setting over 100 dpi. On Windows Vista and later versions, DPlot now ignores that
value and estimates the physical screen width based on a 100 dpi screen, which coupled with the following change makes
bitmap images saved in DPlot consistent regardless of comptuer system.
- Saved bitmap image sizes should now be consistent on all systems.
When saving bitmap images with a resolution setting greater than 100 dpi, DPlot now scales the bitmap dimensions up by
<resolution>/(100 dpi). Previously DPlot used <resolution>/<screen resolution>. Although consistent
with the gimmick used to create high resolution images, this resulted in inconsistent bitmap sizes saved on different systems
with the identical save settings.
- X,Y|,Z| Labels are now saved to and restored from
- The Find Volume Under Surface command now
also calculates the average Z for points above and below the specified base Z.
- All plugins distributed with DPlot now take double-precision arrays (8-byte floating point) rather than single-precision (4-byte).
Single-precision plugins from other sources are still supported, though not recommended for plugin authors for reasons that
When first released and for several years after, DPlot stored all data as single-precision floating point numbers (4 bytes) rather
than double-precision (8-bytes), and the plugin modules distributed with DPlot also worked with single-precision values. This was
done solely to reduce the memory requirements of DPlot. Since switching to double-precision, DPlot will work with either single-
or double-precision plugins, and for the most part this works well. An exception to this was recently pointed out by a user for the
Baseline Shift plugin: the user had time values in the neighborhood of 1311
seconds with a time step of 24 microseconds. Simply converting these times to single-precision and back to double-precision caused
a rather severe precision problem with decimal places wiped out, even though the plugin did not operate on the time values
at all. All plugins now distributed with DPlot are double-precision. This effects the Baseline Shift plugin and also the
Hi-Techniques Win600 file import plugin.
17 May 2012
- Bug fix: Rearranging a few things in 184.108.40.206 to handle polar plot legends ended up breaking the legend resulting from using
13 May 2012
- Added DeleteImage macro command, which removes
images added with a previous InsertImage command or the
Insert Image command on the Options menu.
- Amended calculation of $MEAN, $STDEV, and similar placeholders to
take account of Amplitude Limits settings. Points outside those limits
are now ignored.
- Amended legend generation for Y=f(X) and similar commands for polar coordinates.
For polar plots, X or x are replaced by θ and Y or y are replaced by r. Note that this substitution only takes place if
Polar Coordinates has been specified before
generating the new curve.
- Expanded the capabilities of the Differentiate a Curve command.
You may now perform this operation on multiple curves and optionally replace the source curves with the result. If the source curve
has a legend then the output curve's legend is set to "∂/∂x( <legend> )". Similarly, the legend for a curve
created with the Integrate a Curve command will now be set to
- Amended behavior of ColumnsAre macro
command. [ColumnsAre(0)] did esentially nothing in previous versions: the "Specify Columns to Plot" dialog was still
shown if that was the default setting. You could only bypass that dialog by specifying all of the column numbers. In this version
[ColumnsAre(0)] results in the same behavior as not checking "Pick Columns to Plot" box: X values are read from
the first column and subsequent columns are used for Y values all sharing the same X.
- When saving tab- or comma-separated text files, DPlot always wrote dates using "M/d/yyyy" format. This made alignment in
text editors problematic, but worse, made the files unworkable for reading into DPlot if you had set
Assume input dates are of the form d/m/y under the General Options
menu command. This version uses either "MM/dd/yyyy" or "dd/MM/yyyy" date formatting.
- Added a "Backward" option to the "Make Step Plot" plugin module on the
- Bug fix: DPlot has for many versions interpreted "NAN", "nan", "NaN" as "not a number"
(a divide by zero or other math error) in text files. So it was interpreted as a number, though an illegal one that was skipped over.
This worked fine unless you had a column of labels with one or more entries containing that sequence, e.g. Nancy or
Financial. In that case DPlot would usually decide that the next line was where the data started, since the data
types didn't match (label vs. number). This version is a bit smarter about detecting NaN's. NaN's are detected for "NAN",
"nan", or "NaN" in a 3 (and only 3) character column, and for "#QNAN;" in any position, which is common
in Campbell Scientific Datalogger files.
- Bug fix: If "Time of day (fractional days)" number format was used on date and time values then only the time (not the date)
was displayed in the Extents/Intervals/Size dialog. When you
clicked OK DPlot attempted to read a date and time from the text boxes and set the date to 0 (December 31, 1899). In this release
DPlot still displays times only, but preserves the initial date and adds it back to text box values on exit.
31 March 2012
- Added a "Hide" option for individual reference lines.
- For licensed users only, added a file import plugin for Pacific Instruments
- "List Peaks in Range" now works with 2D views of 3D and 4D surface plots, in addition to XY plots.
- Modified the Polynomial Curve Fit and
Histogram menu commands to ignore points with Y values outside the
limits set with Amplitude Limits.
- Applied the same Amplitude Limits change to all Generate menu plugins that produce new data in the same plot (as opposed to
replacing existing data or creating a new document). (For plugin authors, you must use version 4 of the plugin interface to take advantage
of this change. Contact us if you have any questions about this.)
For Generate menu plugins that produce a new document, all points are preserved but the Amplitude Limits settings, if any,
are now applied to the new document. Note that depending on what the plugin does, the new data may still be influenced by Y values outside
the limits. If that is a problem, crop those values with the Crop or Clip Y commands on the Edit menu before using the plugin.
- Added a DeleteNote macro/DDE command to delete notes
previously added with the various TextNote commands or the
Add/Edit Note menu command.
- Most 3D/4D settings are now preserved when creating a new surface plot using
- Removed inapplicable right-click menu items for bar charts (line style, symbol style and size)
- Bug fix: DPlot did not properly save text notes with embedded \n
sequences (new line) that were added with NoteText,
TextNoteEx commands to DPlot files. When re-reading such a file DPlot
would lose track of the end of the note and usually complain about an unsupported keyword.
- Bug fix: Tab alignment in text notes did not work properly in lines
containing control codes (subscripts, underline, etc.)
- Bug fix: Legend entries generated by DPlot commands (rather than those typed by the user) might not have been saved properly to comma- or
tab-separated value files, perhaps leaving off a trailing quotation mark. This made then opening the files in Excel problematic.
- Bug fix: Curve labels might have been cropped in images copied to the
Clipboard or saved as image files with "Crop white space" checked.
12 February 2012
DPlot Revision Archives
- Improvements for multiple-column text files (e.g. CSV files):
- DPlot now handles up to three column heading lines. If more than one column heading line is found ("found" meaning a line determined
to contain text labels contains as many comma‑, tab‑, or semicolon‑delimited columns as the data), the associated legend or axis label entry
will include a comma between respective heading entries.
- In previous versions title lines not surrounded with double-quotation marks were truncated at the first comma, if a comma was present. In
this release the entire line is used.
- Added angle from horizontal output to the "Distance from..." menu command for 2D data.
- Added a check against too many (too many in this case being an arbitrary >2000) tick marks/grid lines for XY plots. If the
"Specify Interval" setting would result in more than 2000 grid lines, DPlot turns off that setting and automatically picks an interval
on both axes.
- Bug fix: 3D/4D plots with "Label every __" (contour level) might have crashed after performing an operation (e.g. Operate on Z)
that resulted in the contour levels being reset to a value smaller than the "Label every __" value.
- Bug fix: The Playback command did not show line segments in the legend of a plot.
- Bug fix: Copied bitmaps and metafiles were forced to be wide enough to accommodate the unformatted title lines and axis labels. In other words,
the calculated width included all formatting codes. This might have resulted in bitmaps or metafiles having too much white space at the left and right
sides of the plot.
"DataTaker now supplies a copy of the popular DPlot software program with every new DT80, DT82E, DT85, DT80G and DT85G. DPlot and DataTaker have produced a custom
plug-in that allows DataTaker binary files to open directly with DPlot for analysing. DPlot is available as a 30 day trial download for existing DataTaker users
and a full licence can be purchased online from the DPlot website."
Windows 7, 2008,
Vista, XP, NT,
ME, 2003, 2000,
Windows 98, 95