DPlot Changelog

What's new in DPlot 2.3.5.3

May 5, 2014
  • Bug fix: Reading 4-byte unformatted data was broken with the addition of support for 8-byte unformatted data in version 2.3.4.7.
  • The Label Points command had a few quirks when working with hidden curves.
  • Bug fix: List Peaks did not report the correct mean or number of points for "curves" consisting of a single point.

New in DPlot 2.3.5.1 (Mar 18, 2014)

  • DPlot will now correctly interpret text files with lines terminated by a carriage return only, as opposed to what most Windows users are accustomed to with a carriage return/line feed sequence.
  • Added a "Date separator" entry to the General Options dialog. This entry might be important for German users (or for users from any other country where the default date separator is a '.') who typically read text files in which the decimal point character is a '.'. (Version 2.3.4.6 added support for '.' as the date separator, but this broke DPlot for many German users who also used '.' as the decimal point.)
  • DPlot is a bit smarter about re-allocating arrays for unformatted data, both 4- and 8-byte files. In previous versions when it was found that the arrays were of insufficient size, DPlot used the power of 2 greater than or equal to the required size. Since the required size was known, in many cases this was overkill - particularly for millions of points. In this version DPlot will size the arrays to the exact size needed. In many cases this will make the difference in whether DPlot can successfully read the file or not. Another change fixes a bug that under some circumstances might have led to a complaint about being unable to allocate memory for 100 curves, though the file contained only one data set.
  • Bug fix: The filter coefficients for the relatively new CFCx filters were fouled up, particularly D1 and D2.
  • Bug fix: Strangely, this bug has been present from day 1 but it is only recently that anybody has noticed it. In previous versions of DPlot, when printing if you specified more than 1 copy you'd actually get the square of that number rather than the specified number. The problem was that DPlot was looping through that number of copies, and for each loop the printer driver was also printing that number of copies.

New in DPlot 2.3.4.7 (Feb 24, 2014)

  • The Playback feature now uses more modern settings for the Open dialog for videos.
  • Added a new file type that can be opened/saved. Unformatted binary (64-bit) is identical to the "Unformatted binary" type except that it saves data to 64-bit (8-byte) double-precision floating point values rather than 4-byte single-precision values. This might be important if you are working with large magnitude numbers with a small increment between points (date/time groups, for example) or if you have a large number of points (100,000 or so) and it is important that you preserve the increment between points.
  • Bug fix: Curve labels for plots using the Amplitude Limits feature might not have been aligned properly.
  • Bug fix: Version 2.3.4.4 included a change that caused contour lines to not be drawn if the corresponding line width was set to less than 0. This worked, but line widths resulting in a calculated pen width of 1 pixel (on most systems 0.02") were also not drawn if antialiasing was turned on.
  • Bug fix: Blank cells in the Z (3rd) column exported to DPlot via the XYZSurface Add-In command were treated as 0's, rather than properly being ignored.
  • Bug fix: Since Version 2.3.3.2 the default save folder might not have been preserved, depending on how a plot was created. The intent is to offer the last folder saved to as the default, which this version and those prior to 2.3.3.2 do.
  • Amended the FileSaveAs command to accept multiple |TITLEn| placeholders.
  • The Pacific EU file import plugin will now accept an options string when used with the FileOpen macro/DDE command.
  • When using the Zoom toolbar button or when zooming by dragging-and-clicking (assuming "Click and drag to zoom" under the General Options command is checked), you can restrict zooming to the X direction by pressing the Ctrl key or to the Y direction by pressing the Shift key. Whether using the toolbar button or clicking-and-dragging, the key must be pressed and held before the action is initiated. NOTE: This change necessitated a change in restricting the zoom rectangle to a square. This is now accomplished by pressing and holding the ALT key (previously SHIFT key).
  • The DeferMinMaxCheck command now applies to data sent to DPlot with XY, XYXY, and/or XYZ commands. Previously this command only affected data sent via calls to DPlot_AddData.
  • Added "Vertical Grid Lines Only" and "Horizontal Grid Lines Only" menu commands to DPlot Jr. This omission was an oversight. Programmatically, you've always been able to control this setting with an AxisType command.

New in DPlot 2.3.4.5 (Dec 17, 2013)

  • Version 2.3.4.4 was amended to accept multiple arguments (curve indices). Unfortunately this change broke SelectCurve(-1), which previously meant that all curves should be selected for subsequent operations. SelectCurve(-1) works as expected in this release.

New in DPlot 2.3.4.4 (Dec 14, 2013)

  • Added optional "Average Duplicate X's" and "Peak Y Values with Duplicate X's" for the Generate menu to the distribution for the licensed version of DPlot. For those users who have previously used these modules, both now allow you to select which curve to operate on as well as specify whether the generated data should replace the input.
  • Changed the SelectCurve macro/DDE command to accept multiple arguments (curve indices). In addition, the equivalent macro/DDE commands for all Edit menu commands that interactively allow you to select multiple curves now use this setting.
  • For 2D views of surface plots, if you set the major or minor contour line width values to less than 0, then the corresponding lines are not drawn. In previous versions those lines were drawn with a width of 1 pixel/printer dot.
  • Added ListPeaksOptions macro/DDE command.
  • Modified the Polynomial Curve Fit procedure to show dates/times if the number format for the X axis was a date and/or time. In previous versions the limits on the generated points were always shown as numbers, so a lack of precision might have resulted in the output extents being several seconds before or after the input extents.
  • Modified the $MEAN text placeholder to accept X limits in the same way that $YMIN and others work. For example $MEAN(2,20,50) returns the mean amplitude for curve 2 between X=20 and X=50 (inclusive). This change only applies to XY plots.
  • DPlot now uses version 3.15.4 of the FreeImage image library.
  • Bug fix: The List Peaks within a Range command on random 3D points might have crashed on some versions of Windows due to an uninitialized data problem.
  • Bug fix: Version 2.3.3.8 included a fix to eliminate excess white space for curve labels that overlapped a plot border. In some cases this "fix" might have caused DPlot to crash.
  • Bug fix: "Fixed" a problem with the Excel Add-In for 64-bit Excel 2013 (and subsequent versions). The code that removed the DPlot Add-In menu when you removed the Add-In might have caused runtime errors in that version of Excel. The down side to this change is that the DPlot menu will remain after removing the Add-In and until you restart that version of Excel.
  • Bug fix: The function parser (used by Y=f(X) and similar commands, as well as in text placeholders that used an equation) did not properly handle numbers with an exponent. For example LOG10(5.3E-7) balked because of the minus sign.

New in DPlot 2.3.4.3 (Jul 15, 2013)

  • Added right-click menu options to the legend of XY plots to snap the legend to one of a graph's four corners. See Anchor point>Snap to...
  • Added a Replace button (random 3D points) and Paste Z button (points on a rectangular grid) to the Edit Data dialogs of all 3D plot types. For random points this will replace the current data (X, Y, and Z values) with the clipboard contents. For points on a rectangular grid this will replace Z values with the clipboard contents, preserving X and Y. This might be handy if you frequently produce 3D surface or scatter plots with complicated setups: embedded images, long text notations, etc.
  • Bug fix: DPlot crashed when saving DPlot files with notes longer than 1024 characters.
  • Bug fix: For large framed notes the rectangle surrounding the note might have been a bit too small or too large for vertical text.
  • Bug fix: The Distance between points function for 3D surface plots with random points did not handle dragging the mouse to select points correctly.
  • Bug fix: There was a problem when reallocating arrays for XY plots with existing curves. If there was insufficient memory for the new array sizes, the old arrays might not have been restored and all values were set to 0's. And another: if in the same situation you attempted to allocate arrays such that the total number of points exceeded 2^32/8 (bytes per X or Y), DPlot might have crashed without warning.
  • Bug fix: There was a goof in the new Spline Fit dialog that caused the plugin to always operate on either the first or second curves, regardless of what selection you made in the plugin's dialog box.
  • Bug fix: Fixed a problem that has always existed for Generate plugins but only became noticeable with the last release's inclusion of the Spline Fit plugin: If you set the "Number of points per segment" to a value large enough that DPlot could not allocate enough memory to accomodate that new curve (e.g. 100 million or more points), the registry entry set by the plugin indicating inadequate array sizes was not reset. The result of this was that subsequent calls to that plugin would bypass the dialog box where you entered "Number of points per segment", because the plugin thought this was a subsequent call after successfully reallocating arrays.

New in DPlot 2.3.3.9 (Jun 24, 2013)

  • Added MIN and MAX operations to the Z=f(Z1,Z2) menu command.
  • Added a Spline Fit function to the Generate menu. This operates in much the same way the Equal Intervals command with the Cubic Spline method does, but allows for input that loops back in X - is not a function, in other words.
  • Added an option to the Histogram command to plot the frequency of a given bin rather than the count.
  • Added AND, NOT, OR, and XOR functions for use in Y=f(X), Operate on Y, and similar commands.
  • Bug fix: Text and arrows for point labels that were copied to the clipboard may have been incorrectly placed with standard (as opposed to enhanced) metafiles.
  • Bug fix: A roundoff error in axis label placement for 2D surface plots might have resulted in the last label being omitted.
  • Bug fix: With the XYYY Excel Add-In command, if you only selected one data column (correctly interpreted as Y, with X starting at 0 and incremented by 1.) and that column included a heading, the Add-In skipped over the first data point.

New in DPlot 2.3.3.8 (May 18, 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 Copy Picture.
  • 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 2.3.2.3 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.
  • 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.

New in DPlot 2.3.3.6 (Mar 18, 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 here.
  • Modified the MultipleXAxes and MultipleYAxes commands so that they will accept an equation as input.
  • 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 not shown.
  • 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.

New in DPlot 2.3.3.5 (Jan 26, 2013)

  • Updated the Garmin GPX file import plugin to import heartrate information stored between 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 2.3.3.2'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. [ManualScale(=$(XMIN),...], 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.

New in DPlot 2.3.3.3 (Sep 26, 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 2.3.3.2. This release doesn't use a zip file.

New in DPlot 2.3.3.2 (Sep 24, 2012)

  • The distribution now includes a 64-bit version of DPLOTLIB.DLL and 64-bit source code examples in C, C#, and VB.NET.
  • 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 2.3.3.1'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.

New in DPlot 2.3.3.1 (Sep 10, 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.
  • 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.)

New in DPlot 2.3.3.0 (Jul 30, 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 File>Append, Paste, by generating a curve with Y=f(X), etc.
  • 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 2.3.2.8 and 2.3.2.9 they were automatically installed.
  • Bug fix: The FileSaveAs macro command failed when attempting to save a file to a UNC path.

New in DPlot 2.3.2.9 (Jul 11, 2012)

  • Bug fix: Version 2.3.2.8 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.

New in DPlot 2.3.2.8 (Jul 8, 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) number format.
  • 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.

New in DPlot 2.3.2.6 (Jun 9, 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 /(100 dpi). Previously DPlot used /. 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 preference files.
  • 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 follow.

New in DPlot 2.3.2.5 (May 29, 2012)

  • Bug fix: Rearranging a few things in 2.3.2.4 to handle polar plot legends ended up breaking the legend resulting from using Y=f(X,Y1,Y2,...).

New in DPlot 2.3.2.4 (May 29, 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( )". 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 Generate menu.
  • 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.

New in DPlot 2.3.2.3 (Apr 2, 2012)

  • Added a "Hide" option for individual reference lines.
  • For licensed users only, added a file import plugin for Pacific Instruments BEU files.
  • "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 Generate Mesh.
  • 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, TextNote, TextNote3D, or 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.

New in DPlot 2.3.1.8 (Aug 8, 2011)

  • Bug fix: The "fix" for Time of day (fractional days) number format in 2.3.1.7 unfortunately broke all other formats on the Extents/Intervals/Size dialog.

New in DPlot 2.3.1.6 (Jul 15, 2011)

  • Bug fix: The "List Peaks within a Range" command contained a bug that might have caused DPlot to crash since the inclusion of the median calculation.
  • Bug fix: Bar charts with the bar width 1 pixel wide (which might happen if you have more bars than pixels in your screen resolution) were not drawn for filled bars unless the bars were outlined.
  • Modified LineType command so that it does not complain if the curve index is less than or equal to 100. In previous versions the LineType command complained if the curve index was greater than the currently-allocated number of curves.

New in DPlot 2.3.1.4 (Jul 4, 2011)

  • Bug fix: For 2D contour plots of random 3D data, if you unchecked "Label every major line" then an uninitialized data problem might have caused a crash.
  • Bug fix: If multiple XY curves existed and you deleted any curves other than the last, DPlot might have fouled up curve associations, e.g. a point label previously associated with curve 5 might now be associated with curve 4.
  • Bug fix: With a negative tick mark interval (decreasing values from left-to-right or bottom-to-top) DPlot might have displayed 0 as some very small number, e.g. 2.2546E-16.

New in DPlot 2.3.1.1 (May 31, 2011)

  • Modified Average All Curves and Median of All Curves commands to only operate on visible (as opposed to hidden) curves.
  • Added the complementary error function ERFC to the functions available with Y=f(X) and similar commands. The complementary error function is defined as erfc(x)=1 - erf(x).
  • The List Peaks command now includes median, skewness, and kurtosis values (for Y in XY plots, Z in 3D plots, amplitude in 4D plots). Median, skewness, and kurtosis are also output for "List Peaks Within a Range" on XY plots. Also for the latter command, added a bit of slop so that plot extents would be included in the desired extents. In previous versions in most cases the low or high extents would not be exactly equal to the corresponding plot extents, due to roundoff error in converting mouse coordinates to plot coordinates.
  • For file type D (multiple column text files, XY data) added a Heading rows have prefix entry to the Open dialog box. This allows you to specify a prefix character string that tells DPlot that any line including this prefix is definitely not data. In previous versions it was possible to confuse DPlot about where the data started if the heading contained information that could be confused as columns of numbers.
  • For 4D surface and scatter plots, you may now specify a label for the 4th dimension. If used, this label will be drawn at the top of the legend using the legend font. Added corresponding AAxisLabel macro/DDE command.
  • Added "4D Surface" and "4D Scatter" commands to the Excel Add-In.
  • Added Poincare Plot optional plugin for the licensed version.
  • Bug fix: When pasting 4D data, DPlot erroneously used the 4th column heading as the Z axis label.
  • Bug fix: Under some circumstances the legend in 3D/4D plots might have been cropped when copying to the Clipboard, and the same problem might have left out or inappropriately cropped the date in the upper right corner and/or the filename in the lower right corner.
  • Bug fix: If you used a second X axis at the top of a plot (via the Multiple Axes command) and set the number format for the lower X axis to "None", the upper X axis values might have overlapped any title lines.
  • Bug fix: In some cases date/time groups on the Specify Columns to Plot dialog were not drawn, appearing as blank columns.
  • Bug fix: In previous versions for 4D data the "Always auto-adjust scale factors for 3D plots" in many cases used the extents of the amplitude (4th dimension) rather than Z to find appropriate scale factors. This might have resulted in exceptionally tall & skinny or short & wide plots.

New in DPlot 2.3.1.0 (Apr 11, 2011)

  • Bug fix: If Print Caption on the Text menu for 1D plots was checked, plots copied to the clipboard might have had the filename overlapping the labels on the horizontal axis.
  • Bug fix: If you dragged-and-dropped a text file with multiple columns of numbers onto DPlot and Pick Columns to Plot was not the default setting, DPlot saw the first column as Y values with X starting at 0 and incremented by 1, rather than the more usual X in the first column.

New in DPlot 2.3.0.9 (Mar 12, 2011)

  • Bug fix: This one has been present for a while, unfortunately. On XY plots if you allowed DPlot to pick a tick mark interval (the default), then for large extents a bonehead test and rounding problem might have extended the extents by one interval over those specified when that was not necessary. For example if you specified extents of 0 to 2 million and the default tick mark interval was 100,000, usually the upper extent would be adjusted to 2.1 million.
  • Bug fix: Not much of a bug, but the last update included a MessageBox reporting the time required to run an FFT, which of course was meant for our use in updating the Help file topic and should have been removed.
  • DPlot Jr no longer includes the "Buy DPlot" menu command on the main menu bar. Given how DPlot Jr is used by the majority, this feature wasn't appropriate.

New in DPlot 2.3.0.8 (Mar 7, 2011)

  • Line breaks are now supported for point labels.
  • Added Rank plugin to the Generate menu. This feature is roughly equivalent to Excel's PERCENTRANK function.
  • Added Average Curve with Error Bars plugin to the Generate menu. This plugin produces a new document with Y equal to the mean of all Y values at any X within a user-specified interval, and error bar extents equal to a) the mean + the extreme values, b) the standard error in the Y values, or c) the standard deviation in the Y values.
  • Added a Disable hide/unhide with middle mouse button option to the General Options screen for those users who tend to inadvertently click the mouse wheel.
  • Made several improvements to the "Multiple Plots" dialog for printing multiple documents. Documents are now shown in a list box with more room for the document title than the previous collection of 32 checkboxes. Corrected an aspect ratio problem in the layout diagram that might have resulted in a fouled up picture for landscape orientation. Added a "Deselect All" button to compliment "Select All".
  • Bug fix: 1D plots produced by the Excel Add-In and saved as a bitmap image might have been clipped oddly because of a failure to correctly handle the hidden note in the upper left corner added by the Add-In. This might also have occurred if you added your own hidden notes. If you had this problem, you likely saw too much white space at the top of the plot and the plot possibly being clipped at the bottom. All other plot types worked correctly.
  • Bug fix: It was possible to clip the legend in 3D views of 3D or 4D data when saving to a high-resolution image.
  • Bug fix: The Backbone Curve command on the Generate menu sometimes duplicated the first point and skipped the last point in the input.
  • Bug fix: If you panned a plot with a calendar date scale by using the keyboard arrow keys, and you elected to have DPlot choose the tick mark interval, that interval tended to grow with every pan.
  • Bug fix: DPlot crashed if on a 1D plot you had one or more non-positive values and opted for logarithmic scaling.
  • Bug fix: Undo did not work after "unhiding" curves using the middle mouse button.

New in DPlot 2.3.0.7 (Feb 7, 2011)

  • Expanded on the last update's new feature of hiding a curve with the middle mouse button: If you press CTRL + middle mouse button while pointing to a curve, all curves except the one pointed to will be hidden.
  • Fixed an annoyance with inserting Symbol characters in text strings. In previous versions the insertion point was placed before the newly-inserted Symbol character(s). In this release the insertion point follows the new characters.
  • Bug fix: The Reorder Curves command did not mark a file as "dirty", prompting you to save before closing.
  • Bug fix: DPlot crashed with an overflow error for Y values with amplitudes greater than about 1.34E+154. The error occurred in squaring the amplitude as part of finding the RMS value. (The maximum amplitude that DPlot can handle is the maximum amplitude of an 8-byte floating point number: 2^1024 or about 1.798E+308. In other cases DPlot gracefully balks at numbers exceeding that limit, and now does for RMS.)
  • Bug fix: Since the inclusion of horizontal error bars, the text boxes for error values on the Error Bars dialog (fixed value, percentage, and custom) have not been updated properly when switching curves. This might have led to inadvertently changing an error value without actually changing anything.
  • Bug fix: The Delete Points in Box command on the Edit menu failed to reset a flag indicating that X values were evenly-spaced, so that condition was never reevaluated. This worked fine until the graph was saved as a DPlot file. In that case, if the data was originally evenly-spaced DPlot would erroneously save only the start and end X values. Thanks to Robert Duran of Baker Engineering and Risk Consultants for help with the problem.
  • Bug fix: The Average all Curves command might have given nonsense values for curves that did not have the same range in X.
  • Bug fix: The Fill Between Curves option for Fill to bottom only for Y

New in DPlot 2.3.0.6 (Jan 24, 2011)

  • When zooming with the mouse wheel, you may now restrict zooming to the X direction by pressing the CTRL key, or to the Y direction by pressing the SHIFT key.
  • For XY plots you may now hide a curve by pointing to it and clicking the middle mouse button (mouse wheel on the majority of mice). If the middle mouse button is clicked when the mouse does not point to a curve, all curves are made visible.
  • Modified "Make Step Plot" plugin (licensed version only) to include an option to center the steps on the input X values. Thanks to Dr. Ian Crawford for the suggestion.
  • Improved performance of antialiasing. In all previous versions the antialiasing performed for line segments by DPlot was very inefficient with all or portions of line segments that were outside the plot limits (after zooming, for example).
  • Made a change to the drawing order for XY plots when minor grid lines are used and the minor grid line color is different than the major grid line color: In previous versions the minor grid lines for the Y axis would overlay the major grid lines for the X axis. This was only noticeable when the minor grid lines used a different color than the major grid lines. In this version minor grid lines will not obscure major grid lines.
  • Bug fix: If multiple Y axes were used, the title for the 2nd Y axis was placed far right enough that it was impossible to overlap any numbers (or dates, etc.) on the X axis. So for dates/times on X, for example, the 2nd Y axis title was positioned much farther to the right than it would be for the default number format. The intent was probably good at one time, but since this same check isn't performed for the primary Y axis it was, at best, overkill.
  • Bug fix: If "Axes at 0" was checked and grid lines were used on the Y axis, the bottom of the plot would be drawn (actually overdrawn) with the grid line color. This was particularly noticeable if the axes line width was the same as or smaller than the grid line width and used a different color.

New in DPlot 2.3.0.5 (Jan 9, 2011)

  • Added options for image export. For GIF and PNG images, you can now specify that the plot background color should be transparent. (Whether the target application respects the transparency setting is outside DPlot's control. Google Earth, for one, does honor this setting.) For both GIF and PNG images, antialiasing is forced off and the standard Windows' font antialiasing is turned off. You may get better results saving to 32-bit PNG, particularly when importing images into Google Earth. Updated the SetPluginImageDims macro/DDE command to take account of this new capability.
  • Note: Whether output is to an 8-bit GIF or 32-bit PNG, all antialiasing (including text) will be turned off. Depending on your needs and what is possible, you can produce a better-looking image by saving the background image, cropped to the appropriate extents, and importing that background image into DPlot rather than going the other way: saving a transparent image in DPlot and importing that image into some other application. In the former case, all DPlot graphics are drawn onto a background image that is already in place, so antialiasing is not an issue: if antialiasing is turned on or you use one of the Windows default antialiasing features for text, those lines/symbols/text will be drawn as expected, with the proper antialiasing. See, for example, the Background Images topic in the blog.
  • Modified the behavior of tick marks on 2D views of 3D data. If both the X and Y axis number formats are set to "None" and a plot has no X,Y,Z Labels, then tick marks are not drawn.
  • Bug fix: It was possible to cause DPlot to crash if you used the incorrect number of arguments to a text placeholder (e.g. $X) in an equation.

New in DPlot 2.3.0.4 (Dec 15, 2010)

  • Bug fix: The "Swap X,Y" command on the Edit menu was inadvertently omitted for 4D surface plots, and did not work for 4D scatter plots.
  • Bug fix: If you dragged a corner of a 2D plot using the mouse to resize the graph and inverted either the width or height (e.g. dragged the left corner right past the right corner), DPlot would enter an endless loop attempting to draw the plot within a box with a negative dimension.
  • Bug fix: Corrected a problem that might have caused a crash with 2D views of 3D data on a rectangular grid. If "Show coordinates in popup window when mouse hovers over data point" was checked, DPlot sometimes crashed when working with large data sets due to a division by 0 problem.

New in DPlot 2.3.0.3 (Nov 22, 2010)

  • Notes are now saved to and restored from preference files.
  • If you used a non-standard cursor for the "Normal Select" pointer, toolbar tooltips might have been obscured by the cursor in all previous versions.
  • Toolbar tooltips now use the same font used in your menus. On Vista and Windows 7 this should make the tooltips a bit easier to read.
  • Bug fix: A change to the plugin interface several releases ago that was intended to clean up unused curves in XY plots was inadvertently applied to all data types. As a result the "Bitmap to 3D" plugin did not display a plot until after you performed some action to edit the data.
  • Bug fix: Version 2.3.0.2 included a bug which caused the plot background color to be drawn incorrectly for 3D views of points on a rectangular grid.

New in DPlot 2.3.0.2 (Nov 13, 2010)

  • The $AREA text shortcut now works with 3D and 4D surface plots, reporting the plot's surface area. The resulting text will use the number formatting of the Z axis.
  • Added the ability to draw the legend for 3D and 4D surface plots on various sides of the plot. Previous versions forced the location to the right side. Currently these options are only available via the right-click menu for the legend and are not supported for scatter plots. The ContourLegend command can be used to set the legend placement.
  • Added an option for 3D views to display a graphic of the X,Y,Z coordinate axes in the lower left corner of the plot. Currently this option is only available via right-click menu (Orientation Key). NOTE: No effort is made to include this graphic in the clipped region of saved bitmap images or bitmaps/metafiles copied to the clipboard. In other words it might be there; it might not. And it might be cropped. This will likely change in a future release. Like the 3D legend options above, this option is only offered via right-click menu in a quasi-effort to hide it until all the kinks are worked out: it is possible that with this version and using both options that you'll end up with plot attributes overlapping.
  • Added "Monthly Peak" plugin for the licensed version, which is handy for finding the monthly peak value within a time series (daily cumulative sales figures, for example).
  • Bug fix: Probability scale with small or large probabilities (less than 0.0001% or greater than 99.9999%) might have resulted in an endless loop.

New in DPlot 2.3.0.1 (Nov 13, 2010)

  • Bug fix: Another one introduced with version 2.2.9.9 - calendar dates w/ times in text boxes were not interpreted correctly.

New in DPlot 2.3.0.0 (Oct 29, 2010)

  • Bug fix:
  • Version 2.2.9.9 introduced a bug that broke the keyboard shortcuts for changing the view angles of a 3D plot.

New in DPlot 2.2.9.8 (Oct 8, 2010)

  • Bug fix: The document window list was shown on the View menu for 4D plots rather than the correct Window menu.
  • Bug fix: The Define Boundary command did not work with 4D data (only 3D).

New in DPlot 2.2.9.7 (Oct 5, 2010)

  • The Month number format will now use the full spelling of the month, e.g. "January" rather than "Jan", if the date format includes "MMMM".
  • The $AREA text placeholder may now include a range in X between which the area is calculated, similar to how the $YMIN, $YMAX, etc. shortcuts work.
  • Added character-formatting buttons to the X,Y(,Z) Labels feature.
  • Added "Open" and "Save as" buttons to the Y=f(X), X=f(T), Y=g(T), and Y=f(X,Y1,Y2,...) command screens. This might be handy if you have an operation that you frequently use and you use this command often enough that a particular operation migrates out of the most-recently-used list (where applicable).
  • Added a "Click to zoom" option to the General Options screen. If checked, you can zoom on 2D plots by clicking and dragging your mouse (without first clicking the Zoom toolbar button). If unchecked, DPlot behaves as before: clicking and dragging pans the plot. Whether checked or not, the keyboard arrow keys may still be used to pan.
  • For USDA Soil Classifications on triangle plots, changed "Silty Loam" to "Silt Loam" in accordance with the USDA's documentation.
  • Bug fix: The "Stacked points are..." note in the lower right corner of a dot graph might have overlapped the numbers along the horizontal axis when copying or saving the plot to a metafile format.
  • Bug fix: Using the Edit Data command on a curve associated with the second (right) Y axis, mouse clicks were scaled to the left axis rather than the right.
  • Bug fix: One more fix for bar charts similar to that made with version 2.2.9.5. If "Unique colors for each bar" was checked then the same problem with outline pen widths for all but the first bar and non-hollow bars existed.
  • Bug fix: Point labels using $X, $Y, or $Z shortcuts immediately followed by a non-space character (as in $Ykg) did not work properly.
  • Bug fix: Error bars on horizontal bar charts were not drawn properly.
  • Bug fix: When interpreting text files, if the heading lines contained commas, semicolons, or tabs but the data columns were separated by spaces, DPlot would erroneously interpret the first data line as a heading and (usually) use that line as the legend.
  • Bug fix: Previous versions correctly handled date and time values in the first two columns of text files when the date and time were not delineated with quotation marks or when the date and time group in total was delineated with quotation marks, whether there was an intervening comma or not. But DPlot did not correctly combine a data and time when both groups were individually delineated with quotation marks, as in "10/3/2010","6:45:00 PM". This version correctly handles that combination.

New in DPlot 2.2.9.6 (Sep 13, 2010)

  • Added menu options and corresponding toolbar buttons for XY plots to draw grid lines in the horizontal or vertical direction only. Modified the GridLines macro command to take account of this new capability.
  • Bug fix: If you used "Calendar Date" or "Date and Time" number formats on the X axis with a 3D view of 3D/4D data, DPlot might have entered an endless loop while drawing the X axis grid lines and labels. Thanks, Scott Englander, for the assist in tracking this down.
  • Bug fix: The Normalize command on the Edit menu erroneously demanded that the input curve(s) be sorted in increasing X order. Since the operation is independent of X, sort order is irrelevant.
  • Bug fix: The Normalize command might not have used the correct minimum and maximum Y values if the plot was produced by a series of calls to the DPLOTLIB function DPlot_AddData in which the min/max values were intentionally not found due to a previous call to the DPLOTLIB function DeferMinMaxCheck.
  • Bug fix: With a dependent second Y axis on XY plots, DPlot might have allowed too much space on the right side of the plot when figuring out the correct placement of the 2nd Y axis label.
  • Bug fix: Under some circumstances the "Use N/S/E/W suffix" option for number formatting might have displayed E for N, W for S on 3D surface plots.

New in DPlot 2.2.9.5 (Aug 28, 2010)

  • Added "Outline symbols in black" to the Symbol Styles dialog for 3D scatter plots. In previous versions this setting was turned on by default and not optional.
  • Relaxed the constraints on determining whether all labels would fit along the Y axis. In previous versions DPlot might have skipped over labels when it wasn't strictly necessary to do so.
  • The coefficient boxes on the Multiple Axes dialog can now accept equations, e.g. "pi/180"
  • The Equal Intervals command on the Edit menu now allows you to specify a start and stop X value, which might be handy if you want the generated curve to start at some "nice" multiple of the interval. Modified the EditEqualInts command to take into account this new capability.
  • For 3D scatter plots you may now set the line color drawn between points equal to the color of the first endpoint; in all previous versions the color was forced to black.
  • Relaxed constraints that prevented DPlot from handling mouse movement messages (displaying coordinates in the status bar, for example) while a DDE conversation was active. This check was done to prevent hogging the processor while another application was attempting to send data to DPlot at a rapid rate. But many legacy applications establish a conversation with DPlot and do not disconnect until the application is terminated. In this release the check is not against a conversation being active, but against adding data via a call to DPlot_AddData. After calling DPlot_AddData DPlot behaves as before: mouse movement messages are ignored until the conversation is terminated.
  • Bug fix: The lines used for the outline of bars in a bar chart have been fouled up for all but the first bar since the capability of adding error bars was added to DPlot. This might not have been noticeable for thin lines and/or solid fills.
  • Note placement was fouled up for vertical orientation and either center or right justification.

New in DPlot 2.2.9.4 (Jul 29, 2010)

  • Bug fix: A recent change correcting the calculation of the plot size plus axis labels for triangle plots ended up fouling up this calculation for all other plot types, such that axis labels were clipped. The problem was likely not noticeable if you sized the plot with Options>Extents/Intervals/Size, but was quite noticeable if the plot occupied most of the document window. Thanks to Richard Swaim for pointing out the problem.

New in DPlot 2.2.9.3 (Jul 29, 2010)

  • Added "Half-tone" and "Invert" buttons for "User-defined" fill patterns on the "Fill Between Curves" dialog box.
  • Added dot and double-dot accent format controls for all text entries.
  • Amended the dataTaker .DBD file import plugin to correctly handle the new dataTaker option of saving multiple data sets to the same file.
  • Legend location and alignment for XY plots are now saved to preference files.
  • Bug fix: Minor tick mark intervals less than 1/2 month on a date scale might have resulted in an endless loop. Also changed how minor tick mark intervals less than 10 days are handled: in this version the minor tick marks will be drawn at whatever interval exactly divides the interval to the next major (labeled) tick mark by the number of minor intervals, with no consideration given to drawing minor intervals at whole days.
  • Bug fix: Macro editor misbehaved with Directory or ForFilesIn commands in which the path contained a closing parenthesis.
  • Bug fix: Triangle plots might have crashed due to an uninitialized data problem if "Specify size" was checked.

New in DPlot 2.2.9.2 (Jul 2, 2010)

  • Y=f(X,Y1,Y2,...) now allows you to specify a curve from which all X values will be taken. In previous versions the output curve would always have evenly-spaced points between the from X and to X values. Added FXY1Y2_XFrom macro/DDE command to take account of this new capability. Developers please note: This setting is persistent and might effect the behavior of the AddCurves, Compare, DivideCurves, FunctionOfXY1Y2, Lump, MultiplyCurves, and SubtractCurves commands.
  • Error bars may now be drawn in a color other than black. You may also specify an error bar frequency on the Error Bars dialog. (Previous versions used the symbol frequency setting). Modified the ErrorBar macro/DDE command to take account of these new capabilities.
  • Find Intersections dialog is now resizable, which might be handy when working with curves that have a long descriptive legend.
  • Added ContourResetExtents macro/DDE command, which is equivalent to the "Use actual displayed limits" setting on the Contour Options dialog.
  • Bug fix: For the last several releases [Color(-2,r,g,b)] has correctly set the color of minor grid lines on XY plots, but was not used to set the border color on 3D/4D plots as described in the Help.

New in DPlot 2.2.9.1 (Jun 17, 2010)

  • Removed a vestige from the days when DPlot did not allow you to set the plot background color: If the Windows window background color was the same as the selected grid color, grid color was forced to black.
  • Added zoom and pan buttons to the Distance from dialog for 2D data.
  • For XY plots, added $XYMIN and $XYMAX text placeholders.
  • Added Restrict mouse panning to H/V/45° menu command to the View menu. If checked, then panning a 2D plot by dragging the mouse is restricted to horizontal, vertical, or 45° increments. If this feature is unchecked, as before, you can get this same restriction by pressing the Shift key while dragging.
  • For the Generate Mesh command, the Extrapolate... checkbox is now disabled for bivariate interpolation, simply because that feature was prone to blow up with nonsense values and/or crash DPlot. Added quadratic interpolation method, for which the output is calculated by applying weighting factors proportional to the inverse of the square of the distance to a selected number of input points.
  • Bug fix: The "More Curve Fits" function might have crashed with the equation form y=A(x+B)^C if one or more y values were exactly equal to 0.
  • Bug fix: For bar charts with the Shaded Bars option turned off, the second and all subsequent bars were drawn in black within standard and enhanced metafiles.

New in DPlot 2.2.9.0 (May 24, 2010)

  • Added a "Show Example Plots" command to the Help menu, which hopefully along with the "How was this graph created?" links within the plots themselves will help new users.
  • Improved the performance of the Switch Independent Variable command, particularly for large data sets. In previous versions, unless all curves had the same number of points and the same X values at every point, the time required was proportional to N^2, where N = number of points in each curve. In this release if operating on curves for which X is monotonically increasing (which should include almost all data for which this function is meaningful) then the time required is proportional to N rather than N^2. If that doesn't grab your attention... this operation with 1 million points might have taken a bit more that 2 hours before, but should take a bit less than 1 second now on fast processors. Thanks to Richard Swaim for pointing out the problem.
  • The Excel Add-In now works properly with the 64-bit version of Excel 2010 (as well as, as before, the 32-bit version of Excel 2010 and all previous versions back to Excel 95).
  • Bug fix: Version 2.2.8.8 introduced a new bug with the FilePrint macro command. As far as we know that change only affected the Adobe PDF print driver, but it is possible that other printers were affected. The result was either a "StartDoc failed" error message, or a more wordy message concerning missing resources.
  • Bug fix: This one has been around for a long while. An "optimization" in previous versions of DPlot that based the decision of whether to throw out or keep a saved bitmap of a graph when resizing a document ended up causing strange problems, primarily with very large data sets (for which, of course, the optimization was designed in the first place). You might have ended up with the wrong plot being displayed when you closed a document or activated a different document with the Window menu. This version keeps the good features of that optimization and throws out the bad.
  • Bug fix: Right-click menu options in DPlot Jr for 3D data were not consistent with DPlot Jr capabilities. (Some right-click menu commands that should not have been shown rightfully did nothing, other right-click commands which should have been shown were not.)

New in DPlot 2.2.8.8 (May 10, 2010)

  • Added many new options for the new background image feature. The "background" can now be drawn in the foreground. You can specify a global transparency value that is applied to the entire image and/or a transparent background color. Alpha channel in 32-bit PNG images and transparent pixels in GIF and 8-bit PNG images is now handled as you'd expect in an image editor, for both foreground and background images.
  • Added better support for non-US date separators. In this version the Control Panel sDate entry is interpreted correctly when reading files, pasting data from the Clipboard, or reading dates from text boxes. DPlot continues to accept either a slash or dash as the date separator regardless of the Control Panel setting.
  • For logarithmic scales, added checks to ensure axis labels do no overlap.
  • The FFT dialog now allows you to specify the units for the X values of the input. Previous versions forced the units based on an interpretation of the X axis title. This version also allows you to enter units that are not necessarily a measure of time. In that case the FFT will have an X axis label of "cycles/".
  • Similarly, added an "other" entry for X units to the Filter dialog, which only serves to change the frequency label for the bandpass and bandstop filters.
  • The Fill to Y reference line option of the Fill Between Curves menu command now allows you to specify a fill above and/or below the line. Previous versions drew fills both above and below the line (where applicable).
  • Added Tile Horizontally command to the Window menu. Previously this arrangement could only be achieved by a WindowTile(1) macro command.
  • Added Apply buttons to several dialog boxes (more to follow) and shifted the placement of the larger dialogs to the upper left corner so that you can better see the effect of your changes when using Apply. For all dialog boxes that include an Apply button, pressing Cancel after Apply reverts to the settings that were in effect when the dialog box was first opened, which differs a bit from previous versions.
  • Bug fix: For semicolon-separated columns DPlot did not correctly handle files with a trailing semicolon.
  • Bug fix: RND() crashed. Under the same circumstances you will now get a friendlier "Illegal argument" error.
  • Bug fix: Printing with the FilePrint macro command resulted in portrait orientation, regardless of whether you had previously used the Page Setup menu command or FilePageSetup macro command to set the orientation to landscape.
  • Bug fix: In the More Curve Fits module, the procedure always failed with a spurious "Overflow error" for the exponential form Y=A+B*exp(C*X) if B was a negative number. (No overflow actually occurred; the error was due to a faulty check meant to prevent overflows.)
  • Bug fix: For saved bitmap images (BMP, GIF, PNG, etc.) of 2D surface plots, if you selected Crop white space and the contour legend was shown, the right edge of the image was wide by the legend width. In other words, enough space on the right was added for 2 copies of the legend.
  • Bug fix: An uninitialized data problem might have caused DPlot to crash for fill region(s) with the Fill to Y reference line option.
  • Bug fix: Another uninitialized data problem might have broken text shortcuts used in equations within macro commands or text boxes in dialog boxes. For example $XMIN used in a ManualScale command might have been erroneously interpreted as the minimum X for curve 1 rather than the minimum for all curves.

New in DPlot 2.2.8.5 (Apr 26, 2010)

  • Added the ability to specify a background image
  • GPS-recording with a background image taken from Google Earth
  • for 2D graphs (with the exception of polar charts and triangle plots). Added corresponding SetBackgroundImage macro/DDE command.
  • Added Normalize command to the Edit menu for XY plots, along with corresponding EditNormalize macro/DDE command. This command scales the Y values to 0-1 or 0-100.
  • Added a right-click menu option for XY plots to "Add $X, $Y Label", which saves a bit of effort over using Edit mode and/or the Label Points command on the Text menu. Labels produced with this command will be framed and opaque. As with all other labels, attributes can be changed with the right-click menu or by double-clicking on the label.
  • Added right-click menu options for the legend (in XY plots) and text notations to change the anchor point of those objects.
  • Most-recently-used file list has been expanded from 4 to 8 files. Also took a few steps to avoid duplicate names in this list.
  • A couple of new mouse operations for XY plots: Ctrl+click on a curve brings up the Symbol/Line Styles dialog with the clicked-on curve selected. Shift+click on a curve brings up the Colors dialog with, again, the clicked-on curve selected.
  • Added 2 smaller symbol sizes to the right-click menu for curves: 0.05" and 0.075", 4pt and 5pt, and 1mm and 2mm. (The sizes and units shown are dependent on the "Default dimensions" setting.)
  • For 2D views of 3D data, the axis labels might have overlapped labels added with the X,Y,Z Labels command. (This is still a problem with 3D views; no attempt is made to prevent that overlap. If your labels overlap the corresponding axis title you can shift the axis title with leading \n's).
  • DPlot is a bit more flexible with tick mark intervals on date scales. In this version you can specify a tick mark interval of 3 or 4 months and that is the interval you'll get. (In previous versions the interval would have been forced to 2 months in both cases).
  • Modified the behavior of the SetPanFraction macro/DDE command. In previous versions the pan value was forced to the limits 0.01 to 1.0. In this version 0 is allowed. When set to 0, DPlot will not automatically pan a plot when a) X values sent via a call to DPlot_AddData or with one of the XY commands exceed the right extent of a plot and b) the ManualScale command has been used.
  • Added a bit of syntax checking to the function parser. In previous versions, for example, "exp^5" (rather than "exp(5)") would have crashed rather than returning an error.
  • Bug fix: In some cases DPlot did not correctly handle text files with one or more lines in which the last data column was blank, but the previous column was not blank.
  • Bug fix: DPlot did not correctly handle "quoted" column headings in text files that consisted of two successive quotation marks.
  • Bug fix: Partially-transparent symbols were drawn fully opaque in the legend.
  • Bug fix: Syntax errors with the Operate on X command on the Edit menu might have resulted in a not especially helpful "No error. How did you get here?" message.
  • Bug fix: When dragging the corners of a 2D plot to resize, if the document was not maximized and you dragged the cursor outside the document window's client area, the text showing the plot dimensions might have been left on the screen or DPlot might have immediately gone into "pan" mode, drawing a line with arrowhead on the screen that would not go away until the plot was redrawn.

New in DPlot 2.2.8.4 (Apr 26, 2010)

  • Added options for reference lines to draw a frame around the reference line label and/or make the label opaque. Modified the RefLine command to take advantage of this new capability.
  • Added options to 1) Draw contour line labels horizontally. The default is for the label to be oriented with the contour line at the point it is drawn, and 2) Use either black or white for the line labels based on the luminance of the background color for "Both lines and shades". By default the labels will always be drawn in black for this rendering. Added documentation to the ContourLabelLines command to account for these new capabilities.
  • For Degrees, Minutes and Degrees, Minutes, Seconds number formats, added an option to display N, S, E, or W suffixes with the absolute value of the latitude/longitude. Added NSEW macro/DDE command to control this setting.
  • Added a right-click menu option for point labels to copy the point label text to the Windows Clipboard. Text shortcuts in the label (e.g. $X, $Y) will be replaced with the corresponding numeric value using the default number format.
  • Bug fix: The change in version 2.2.8.1 allowing a different color for minor grid lines was ignored for polar plots if you had antialiasing turned on.
  • Bug fix: On XY plots if you used the right-click "Copy data" command, then pasted that curve into a new document and saved the document with File>Save (rather than Save As), the file was automatically saved to the same name as the original document, overwriting it.
  • Bug fix: On 2D views of random 3D points, if a triangle (formed by triangulating the input X,Y points) was only 1 pixel wide, then a dot would be drawn regardless of whether the Z value was outside the limits specified by Extents/Intervals/Size.
  • Bug fix: For saved bitmap images (BMP, GIF, JPG, etc.) with the resolution set to higher than 100 dpi (lower resolution settings are ignored), labels added with Text>X,Y|,Z| Labels might have been incorrectly cropped.

New in DPlot 2.2.8.3 (Apr 26, 2010)

  • Bug fix: Aaarrgghhh. One more fix associated with "better" handling of blank columns in CSV and other text files that started in version 2.2.8.1. If you had two or more columns and the data was preceded by a line containing one or more numbers (not necessarily associated with the data but which might have been, for example, the number of following data rows) then DPlot would initially interpret that number as part of the data, but then fail to properly read the file.
  • Bug fix: Previous versions saved the axis associations of only the first 20 curves to preference files (File>Save Preferences).

New in DPlot 2.2.8.2 (Apr 26, 2010)

  • For XY plots, removed restrictions for saving data as CSV. In previous versions all curves had to have the same number of points and identical X values. If either of those conditions were not met then CSV (as well as tab-separated values) was not given as a "Save as type:" option. In this release, if one or more curves has a different number of points or one or more different X values, you can save as CSV provided that all curves are sorted in increasing X order. If a curve does not have a given X, a blank entry is written to the file (two successive commas or two successive tabs). These will show as blank cells when imported into Excel.
  • Added 14 sieve size options for Grain Size Distribution plots, for ASTM sieves only. These sizes will primarily be useful for those involved in mining operations. For programmers, modified the GrainSizeFlags command to handle this new ability.
  • Added Datataker DBD file import plugin to the distribution.
  • Bug fix: For 3D surface plots, "Specify extents" to clip values outside specified Z limits did not work well with custom contour levels.
  • Bug fix: The Excel Add-In XYYY command took the correct step of shifting curve legends (from column headings) in the case of completely blank columns, but it started the shift one column too soon.
  • Bug fix: For 2D views of 3D surface plots, the legend might have overlapped title lines and/or the X axis label, particularly for narrow plots (taller than wider).
  • Bug fix: When saving CSV files for XY plots, if a column heading was blank then DPlot wrote nothing to the file (other than the trailing separator). This caused problems with version 2.2.8.1's new features improving support for blank data entries, such that DPlot might not have figured out in which line the data started. In this release blank column headings are written to CSV files as two successive quotation marks.

New in DPlot 2.2.8.1 (Apr 26, 2010)

  • Added a "Expand constants in legend" checkbox to the Y=f(X) and similar dialogs. If checked, constants (A,B,C,etc.) used in equations will be replaced with their corresponding numeric values in the legend (title in the case of 3D surfaces).
  • For surface plots from randomly-spaced data, DPlot does a better job of selecting which point the mouse is hovering over before displaying a popup note with that point's coordinates.
  • Improved handling of headings in saved CSV files for XY plots. In previous versions if there was only one curve, the heading was set to the Y axis label (which might have been blank) regardless of whether the curve had a legend entry or not. In this version, when only one curve is present then (as before) the Y axis label is used as the heading; if the Y axis label is blank then the corresponding legend entry is used. Similarly, if the X axis number format is dates and/or times and the X axis label is blank then DPlot makes a number-format related decision about an appropriate label: "Date", "Date/Time", or "Time".
  • Right-clicking along the Y axis on an XY plot in previous versions allowed you to set the upper/lower limits of the Y scale, but only for the primary Y scale regardless of which side of the plot you clicked on. In this version if you are using two independent Y axes and click on the right side, you are given the option of changing the extents of the right Y axis. Note that this may not necessarily lead to the expected results: DPlot will always try to find a reasonable tick mark interval such that each Y axis has the same number of intervals.
  • You can now set the color of minor grid lines on XY plots, independent of the major grid color.
  • For 3D wireframe plots, if both Borders and Grid are unchecked under Draw on the "Contour Options" dialog, then element borders will be drawn. In previous versions the default was grid lines, but those lines are often too sparse to give the surface much definition. If you are plotting more than a several hundred thousand points, though, this new behavior might result in a plot that is mostly black (or whatever the border color is). In that case be sure to check Grid and uncheck Borders on the Contour Options dialog.
  • Bug fix: DPlot did a poor job of handling CSV files with an abundance of blank entries, particularly if the last column in the first data line was blank. In many cases DPlot would get confused about which line the data started in, and/or might have reported that it could not find a pattern of data columns int the file.
  • Bug fix: The "Label this point" feature of Edit Mode for XY plots did not pick up the label unless the label text control was given the focus (and subsequently lost the focus, either by tabbing away or clicking on another control). The was generally a problem for the second and subsequent labels added with this feature, which set the default label to the previously-specified label text (so if you were happy with that default label, there was no reason to give the text control the focus).
  • Bug fix: The formatting buttons on the Legend dialog for XY plots did not always work on the first attempt, particularly when this dialog was opened by double-clicking on the legend.
  • Bug fix: The LAS well log file import plugin incorrectly interpreted files containing data lines exactly 256 characters long, or comment lines longer than 256 characters. There was also a roundoff error in determining the expected number of data lines for some combinations of START, STOP, and STEP values that might have led to an erroneous error message.
  • Bug fix: Axis labels/titles might have been drawn on the wrong side of a 3D view of 3D/4D data if negative scale factors on the X or Y axis were used.
  • Bug fix: Date and Time number format displayed pre-1900 dates as "########", while Calendar Date format worked fine. The problem was due to DPlot originally being limited with dates in the same way that Excel is (Jan 1, 1900 through Dec 31, 2078). DPlot has for many years worked with dates from Oct 15, 1582 through Dec 31, 9999, but the text formatting for Date and Time number format was not updated to include this capability.

New in DPlot 2.2.7.8 (Apr 26, 2010)

  • Bug fix: Some user-specified tick mark intervals did not work especially well with calendar dates, in particular tick mark intervals greater than 2 years and less than 10 resulted in a mess of early grid lines at a much smaller spacing, followed by a large gap.
  • The divisor in the Standard error about the line calculation that is one of the outputs of the Polynomial Curve Fit command has been changed from n-1 to n-. This value now matches the answer provided by Excel's LINEST function.
  • The trial version of DPlot now includes most of the file import and export plugin modules previously distributed only with the licensed version.

New in DPlot 2.2.7.7 (Feb 1, 2010)

  • Removed all dependencies on DPLOTLIB.DLL functions from the Excel Add-In: all communication with DPlot is now handled entirely within the Add-In's VBA modules. This should result in fewer Excel security-related errors, and may mean that the Add-In will work with the upcoming 64-bit version of Excel 2010... stay tuned.
  • For the Excel Add-In functions, added a hidden text notation with a description of the source data in the form "Source: [Filename]Sheet!R1C1". This might be useful for recalling the source of the data in a saved DPlot file. The note is initially placed at the upper left corner of the box surrounding a plot. No other consideration is given to the note placement, so if unhidden it might overlap other text entries (or other similar hidden notes). If you want to see this note (or move it to another location or delete it), click the Note button on the toolbar.
  • Added $NC text shortcut, which is replaced by the 1-based curve index. This shortcut is only useful in the legend and in the Operate on X and Operate on Y commands on the Edit menu.
  • Added the ability to specify a range in X to operate on with the Remove Random Spike menu command.
  • Bug fix: Corrected a couple of problems with the SRTM file import plugin. 1) If "Set X:Y scale factors to give proportional ground distances" was checked (and this should have been labeled X:Y:Z scale factors) then the Z scale factor was not properly calculated, normally resulting in a greatly exaggerated Z scale in 3D views, and 2) The default tick mark interval was fouled up if the extents were greater than 20 minutes and less than or equal to 30 minutes.
  • Bug fix: Point labels were misaligned roughly 1/2 character to the left in enhanced metafiles.
  • Bug fix: The Integrate macro/DDE command effectively ignored any previous SelectCurve command; the curve that was integrated may (or may not) have been that specified with SelectCurve if more than 1 curve was present.

New in DPlot 2.2.7.6 (Dec 6, 2009)

  • You can now abort a Crop, Delete Points in Box, or Set Limits to Min/Max in Box command by pressing the Escape key before releasing the mouse button.
  • The macro Shell command now correctly handles command parameters that include quotation marks (which might be needed for commands containing spaces). For example, in the following command the additional quotes are necessary because of the spaces in the filename plus the commandline parameter:
  • Shell(""c:Program FilesMy Application est.bat" param1",1)
  • but would have resulted in the command being interpreted as a 0-length string in previous versions because of the successive quotes.
  • Most dialog boxes that expect numeric input will now accept equations (prefaced by an equals sign). These equations may include text placeholders. For example on the Reference Lines dialog if you select Y= and "=$MEAN(1)" for the At Value entry, you will get a horizontal reference line at the mean Y value for the 1st curve.
  • The principal difference between these text boxes and text boxes that accept character strings (titles, labels, etc.) is that the equation is evaluated immediately and is not preserved.
  • Added an option to the Fill Between Curves command on the Options menu to fill the area below a curve, only for those points less than or equal to some reference Y value.
  • The $YMIN, $YMAX, $ZMIN, and $ZMAX text placeholders may now include a range within which the min/max should be evaluated. For example $YMIN(2,1.6,2.4) is replaced by the minimum Y value of the 2nd curve between 1.6 < X < 2.4.
  • The RefLine macro/DDE command now accepts equations for all parameters. This is primarily useful for specifying the value, e.g.
  • RefLine(1,1,0x00FF0000,30,=$YMAX(3),"Max value, curve 3")
  • Added code to correctly handle printing to PDF print drivers when the filename is specified using the FilePrint command. (Before this release, some print drivers produced a PostScript file in this case, others insisted on displaying the Save As dialog.) DPlot now includes code to produce the expected results when using the Adobe PDF, PDF995, docuPrinter, or PDFcamp drivers. (The Adobe PDF driver is distributed with Adobe Acrobat; the others are available from:
  • PDF995 from Software995.
  • docuPrinter LT from Neevia Technology.
  • PDFcamp from veryPDF.
  • This change is mostly useful when batch-converting a large number of files when you do not want to continuously respond to the normal Save As dialog.
  • Please note: No precautions have been added for other PDF print drivers. Results with drivers not mentioned here will vary. If you have a pet PDF print driver that misbehaves with the FilePrint command and a specified filename (produces a PostScript file or insists on displaying the Save As dialog), let us know and it is possible we'll add code to work around this problem.
  • Added Request macro function to retrieve a dozen or so document-specific items from DPlot. The result of the Request function can then be used in subsequent macro commands. For example, you can request "ListPeaks" and then use that output as the text of a notation with the TextNote, TextNote3D or TextNoteEx commands.
  • Added several request items related to filenames that you can retrieve from DPlot using a DPlot_Request call using DPLOTLIB.DLL or the new Request macro command: filename, filetitle, fname, and path.
  • Bug fix: Ouch! The mean (and therefore the standard deviation report as well) shown by the List Peaks command was incorrect if a curve did not start at Y=0.
  • Bug fix: If the legend for a 2D bar chart was dragged outside the plot extents, the color blocks used in the legend were clipped.
  • Bug fix: In 2D views of random 3D points with contour lines, if a triangle edge had two points exactly equal to the contour value, no line was drawn.

New in DPlot 2.2.7.3 (Nov 26, 2009)

  • Licensed version only: In addition to the prior moving average previously performed, the Moving Average plugin can produce a central or cumulative moving average. The plugin also gives the option (for prior and central averages) to produce (or not) averages at the tails (first N-1 points for a prior moving average, first and last (N-1)/2 points for a central average). For more information see the associated blog entry.
  • DPlot uses a different Windows routine to save bitmap images, with the result that you'll be able to save much larger images and experience fewer memory-related problems when working with multiple documents. For the nuts-and-bolts explanation: DPlot previously created bitmaps with calls to CreateCompatibleBitmap, which unbeknownst to the red-faced author uses your video card's memory. (Some device drivers may be smart enough to fall back to system memory if insufficient video memory is available, but most do not.) When saving large bitmap images you might have encountered "Insufficient memory for w x h bitmap." or a similar message for cropped images. In addition you might have run into problems when working with many documents, depending on how much available memory your video card has. DPlot now uses CreateDIBSection to create most bitmaps, which uses user mode memory. Redrawing may take a few milliseconds longer now, but bitmaps are only limited by your physical RAM and/or page file size, up to 2Gb.
  • Bug fix: An uninitialized data problem might have led to "Syntax error in function" messages for the Y=f(X) and similar commands with perfectly valid functions.
  • Bug fix: One more goof in the ManualScale command introduced with version 2.2.6.9 has been fixed. If you omitted either Y parameter, what should happen is DPlot uses the existing Y extent. But instead you might have received an error message concerning the Y extents being equal, or worse, completely nonsensical Y extents.

New in DPlot 2.2.7.0 (Nov 26, 2009)

  • The function parser will now accept the FORTRAN ** operator for exponentiation. Also added checks to ensure that you meant to use the Y=f(X) command rather than Y=f(X,Y1,Y2,...).
  • DPlot does a somewhat better job of centering contour line labels on the respective contour. Also, for output to other than metafiles, for opaque line labels DPlot gives a bit more white space at the beginning and end of the label, and less white space (which previously tended to overwrite other lines unnecessarily) at the top and bottom of the label.
  • Changed the physical length of the pattern used for patterned line styles, taking the line width into account. In previous versions the spaces between dashes and dots tended to close up with lines wider than about 0.04". If any line styles on an XY plot are non-solid, the largest line width is used to determine the pattern length for all patterned line styles.
  • Licensed version only: "More Curve Fits" plugin now includes the equation form y=A+B*exp((C*x)^D). Depending on your input, this form may take several hundred iterations to converge to the best solution.
  • Probability scales are now clipped at 1.E-5% and 99.99999%. Previous versions were limited to 0.001 - 99.999%.
  • Added an option for polar plots to display angles as 0 to +180 degrees (or +π, depending on number-formatting options) rather than the default 0 to 360 degrees.
  • Bug fix: The new version 2.2.6.9 $Y text shortcut did not work correctly.
  • Bug fix: Starting with version 2.2.6.6, DPlot botched up the legend for XY plots if you set the "Maximum number of rows" entry to 1.
  • Bug fix: The Excel Add-In's XYZSurface and XYZScatter functions choked if the Excel selection had one or more leading blank rows.
  • Bug fix: Reference lines on 1D plots ignored the line width setting if antialiasing was turned on.
  • Bug fix: Version 2.2.6.9's change allowing equations as parameters in macro/DDE commands broke the ManualScale command for 3D views of 3D/4D data.

New in DPlot 2.2.6.9 (Nov 26, 2009)

  • Added $X(i,j) and $Y(i,j) text placeholders. When used, these placeholders are replaced by the j'th X or Y value of the i'th curve of an XY plot.
  • Many of the macro/DDE commands that accept numeric parameters will now accept equations, preceded by an equals sign. For example, in the command:
  • [ManualScale(0,0,=CEIL($XMAX/100)*100,=CEIL($YMAX/10)*10)]
  • the high X value is set to the smallest multiple of 100 that is greater than or equal to the maximum X value. Similarly, the high Y value is set to the smallest multiple of 10 that is greater than or equal to the maximum Y value.
  • For triangle plots, added an option for X+Y+Z=1. If checked then the range along each axis is 0-1. (In previous versions X+Y+Z=100, with a range along each axis of 0-100.)
  • Added a Hide command to the right-click menu for curves in an XY plot. Previously this functionality was only available within the legend of a plot. Curves hidden with this option may be made visible with the Hide Curves or Unhide All Curves commands on the View menu.
  • Changed the behavior of 3D scale factors. Whether set with the Contour Options or Scatter Plot Options dialogs, with a ContourScales macro/DDE command, or read from a DPlot file, if any scale factor is set to 0 then it will be reset to the value normally determined by the "Always auto-adjust scale factors on 3D plots" option of the General command on the Options menu, or forced to 1.0 if that option is not selected. This is primarily of use to programmers who want a fixed, known relationship between the physical distances along the X and Y axes, but who don't necessarily know the Z extents (at least not without a bit of extra work).
  • Changed the behavior of "Specify extents" vs. zooming. In this release if the "Specify extents" box is checked when you click OK on the Extents/Intervals/Size dialog box, all previous zooms are deleted. In previous versions zoom information was maintained, and that information was written to saved DPlot files. The trouble with doing that is there is not sufficient information in the DPlot file to tell which operation took place last, and DPlot always processed the zoom extents and used those even though you might have subsequently used "Specify extents".
  • Eliminated an annoyance. In previous versions if you had a mouse-activated point label and the "Show coordinates in popup window when mouse hovers over a data point" General option was checked, when hovering over a point you'd sometimes get the mouse-activated label, which 1/2 second later would disappear and be replaced with the popup window displaying the point coordinates. In this release that popup window will not be displayed if a mouse-activated point label is currently being displayed.
  • Added two new inverted triangle symbol types (28 and 284) that line up vertically with the non-inverted types 7 and 263. (As with symbols 7 and 263, symbol types 9 and 265 are placed such that the geometric center of the triangle is at the data point.)
  • When pasting 3 or 4 columns of data from the clipboard into a 3D/4D surface plot or scatter plot, DPlot will now accept dates and times. Previous versions were restricted to numbers.
  • Bug fix: The feature of showing a popup window displaying a data point's coordinates for randomly-spaced 3D data has always been broken unless the X and Y extents were relatively small. (The test performed for distance from a data point was in data space rather than pixels.)
  • Bug fix: Shadows for button-activated text notations were not drawn correctly on Vista systems. Those shadows are no longer drawn on Vista.

New in DPlot 2.2.6.8 (Oct 7, 2009)

  • In previous versions the ability to pan a 2D plot left/right/up/down using the keyboard arrow keys or by dragging the mouse was limited to plots that you had zoomed in on. This release removes that restriction. Also, panning with the mouse is now supported by DPlot Jr and DPlot Viewer, and for the full version and DPlot Jr panning with either the arrow keys or the mouse creates an Undo file.
  • Added Ab-An-Or (Albite, Anorthite, Orthoclase) layout to triangle plots.
  • Added an "Invert" button to the Hide Curves dialog, which toggles the visibility of all curves.
  • Bug fix: Undo files saved the checkbox options on the General Options dialog, but no other entries. So there was no way, for example, to "undo" changing the default decimal symbol or the maximum number of data points for which antialiasing would be applied.
  • Bug fix: 3D bar charts ignored the "Custom levels" contour setting, other than the low and high values. Other levels were distributed evenly between the low and high.
  • Bug fix: When pasting data from the Clipboard, completely blank columns were added as new curves with 0 points. This might have led to, at best, confusing subsequent operations. In this version after pasting Clipboard data DPlot checks for and eliminates new curves with 0 points.
  • Bug fix: The Reference Lines dialog might have rounded off the reference X/Y value simply by opening the dialog and clicking OK. This was particularly a problem with calendar dates and times where the reference value included fractional seconds, but the time formatting string used on the corresponding axis did not.
  • Bug fix: Starting with version 2.2.6.6, 1D DPlot files with "Specify extents" checked did not properly save those extents. Subsequent attempts to open those files usually resulted in DPlot crashing. For these files saved with versions 2.2.6.6 or 2.2.6.7, DPlot will now turn off "Specify extents" and otherwise process the file properly. If you then re-enter those extents and re-save the file, all will be well.

New in DPlot 2.2.6.7 (Oct 7, 2009)

  • Changed the behavior of zooming out with the mouse wheel. In previous versions using the mouse wheel zoomed out by a factor of 2. In this version zooming out with the mouse wheel is equivalent to clicking the "Zoom out" button on the toolbar, which will restore the previous zoom extents. (The 2x factor in previous versions was only approximate. DPlot would adjust the plot extents to give "nice" tick mark intervals. In many cases zooming in, then zooming out with the mouse wheel resulted in different extents than you started with.)
  • Bug fix: If the date format for calendar dates (set with the Number Format menu command) did not match the "Assume input dates are of the form d/m/y" setting under Options>General, DPlot fouled up dates in text boxes. This was especially evident on the Extents/Intervals/Size dialog box: on entry dates would be displayed using the selected date format, but upon clicking OK were interpreted using the Options>General setting. So the month and day might have been transposed even though the dates had not been edited in any way.
  • Bug fix: For 3D views of random 3D points, symbols drawn at data points might have been drawn when they should have been hidden by other parts of the surface. This problem sometimes occurred when symbols overlapped each other.
  • Bug fix: Zooming in with the mouse wheel or with CTRL+ did not work properly if the lower extent was a negative number. In that case the new low extent would generally be 0 or close to it, regardless of the previous value.
  • Bug fix: If you used the "Zoom out" button on the toolbar to zoom all the way out, DPlot no longer received mouse wheel messages until you performed some action that restored the focus to the main window.
  • Bug fix: Recent "fix" to the "Delete Points in Box" command did not work with monotonically increasing X values if the left side of the box was positioned before the start of the data.
  • Bug fix: Ugh. Starting with version 2.2.6.5, Generate menu plugins distributed with DPlot that resulted in a dialog box being displayed were amended such that the description included a trailing ellipsis, to make those menu commands adhere to Windows guidelines. Unfortunately this broke the RunPlugin macro/DDE command, unless the "Plugin Description" argument included that trailing ellipsis.
  • Bug fix: Amended a fix in Version 2.1.6.7 for very long line segments on XY plots (made very long by zooming in or setting the plot extents to a small fraction of the data extents). In some cases those line segments might have had an incorrect slope because the scaled endpoint coordinates were truncated to fit in a 2-byte integer. This release handles those line segments better on XP and Vista systems.

New in DPlot 2.2.6.6 (Oct 7, 2009)

  • Improved the efficiency of the "Delete Points in Box" command on the Edit menu. The improvement will especially be noticeable for large (> 100K points or so) data sets. If a plot contains any point labels DPlot will continue to use the previous, slower routine.
  • Amended Legend macro/DDE command to accept a $LEGEND(n) placeholder, which will be replaced with the legend for curve n. This might be useful when operating on an existing curve in some way, then appending a description of the operation to the legend of the source curve.
  • For polar plots, if the start point of a line segment has a radius less than the low value specified with Extents/Intervals/Size then that endpoint is now drawn at the center of the plot. In previous versions that line segment would not be drawn.
  • For developer's of Generate plugins, amended the Generate menu based on subfolders below the pluginsgenerate folder. If plugins are found below that folder, DPlot will add a sub-menu with the folder name, and those plugins will be added to that sub-menu rather than the Generate menu. If you write a plugin you believe would be useful to others, please let me know. Credit will of course be given where it is due (or not: it is up to you).
  • Removed the limitation on the number of files processed by a ForFilesIn macro loop. Previously there was a limit of 256 files.
  • Added the function DPlot_AlwaysActivate to DPLOTLIB.DLL. Normally, calls to DPlot_Command, DPlot_Plot, etc. cause DPLOT.EXE to be activated. Use DPlot_AlwaysActivate(0) if your application produces plots without user interaction and it is inconvenient and/or annoying for DPlot to be activated with each new plot. This command has no effect if DPlot is hidden.
  • Bug fix: In the Y=f(X) and similar functions, in some cases DPlot would add an additional point due to a precision limitation. For example if the From X value was 0, the To X value was 0.049999, and the interval was 1.E-6, DPlot would find that 49999 intervals starting at 0 was equal to, roughly, 0.049999 - 6.9E-18: less than 0.049999, so a point was added. This version takes into account the inherent error in double precision numbers and (in this case) produces 50K points from 0 to 0.049999.
  • Bug fix: A small precision error in comparing data extents to extents specified with the Extents/Intervals/Size command with 3D views of random 3D/4D points might have resulted in triangles being omitted that should have been drawn.
  • Bug fix: In some cases if the number of legend entries was equal to some multiple of the "Maximum number of rows" entry for XY plots, you would get an additional unwanted column (all white space) in the legend.

New in DPlot 2.2.6.5 (Oct 7, 2009)

  • Corrected a few mostly cosmetic problems with menu commands for "Generate" plugins. Ellipses were not shown for commands that caused a dialog box to be displayed. Generate plugin menu commands were not disabled if a plot was not open.
  • Bug fix: The "Delete Points in Box" command on the Edit menu stopped short; it would not delete the last point in any curve.
  • Bug fix: It was possible to crash DPlot by using the mouse wheel to zoom out to exceptionally large numbers (> ~2.E+308 on a linear scale, difference in logarithms of the extents greater than 308 on a logarithmic scale.)
  • Bug fix: When zooming in with the mouse wheel, roundoff error forced the extents on a logarithmic X axis to be 2 and sometimes 3 log cycles.
  • Bug fix: Several dialog boxes (in particular but not limited to Y=f(X)) that displayed a list of unit choices for increment in X, generally tied to the number format used for the X axis, might have crashed on entry with an integer overflow error. This was especially true with calendar dates. The problem occurred when attempting to figure out the best units to use for the X axis; for calendar dates, for example, DPlot checked to see whether the existing curves had a spacing between points close to 1 year, month, day, hour, minute, second, or millisecond. If the check made it all the way down to milliseconds with a modern date then the test was very prone to crashing with an integer overflow error (a date in days multiplied by 8.64x107 milliseconds per day is generally a bit large for 4 byte integers). Thanks to john_in_sandiego for pointing out the problem.

New in DPlot 2.2.6.4 (Oct 7, 2009)

  • (Licensed version only) Modified Garmin GPX file import plugin to work with GPX files whose records do not contain a field. In this case, of course, you cannot plot speed, or plot altitude vs. elapsed time or date/time.
  • At request, slightly modified the popup window that appears when hovering over a data point on an XY plot. If multiple independent axes are used and the curve containing the point is associated with the 2nd Y axis, the Y value is presented as "Y2=".
  • Bug fix: It was possible to cause DPlot to crash when zooming on a logarithmic scale if you simply clicked and released the mouse button (rather than dragging out a rectangle). What should happen in this case is that the plot is zoomed in by a factor of 2, centered on the cursor position but forced to be within the current plot extents. If you clicked near a plot edge that last operation might have resulted in a negative value for an extent, leading to an illegal math operation and crash.
  • Bug fix (Licensed version only): SRTM plugin did not properly handle 3-second files (that is, all areas other than the United States) for which you did not plot the entire 1° x 1° extents of the file.
  • Bug fix: When reading text files if you selected "Alternating X,Y columns" but only a single X,Y pair, the Y axis label was erroneously set to the column heading for the matching X column (X and Y axis labels were identical, in other words).
  • Bug fix: List boxes displaying lists of curves/groups were drawn with all lines from the corresponding legend entry or axis title if that text contained line breaks. The result was an overlapping mess of text. In this version only the first line is used in those list boxes.

New in DPlot 2.2.6.3 (Oct 7, 2009)

  • DPlot does a better job of handling multiple-monitor setups at startup. In previous versions DPlot always appeared on the primary monitor.
  • Made several minor improvements to SRTM file import plugin: 1) Added an option to correct X & Y scale factors such that distances along each axis are equivalent. 2) Added code to set the default tick mark interval to more aesthetically pleasing units on the X and Y axes: 1, 2, or 3 minutes depending on the extents of the plot.
  • Bug fix: Corrected a roundoff problem that often caused the omission of labels along the axes of surface plots at one or both ends, particularly for "Degrees, Minutes" or "Degrees, Minutes, Seconds" number formatting.
  • Bug fix: Recent improvements with saving image files had a side effect of fouling up prints of 2D and 3D views of surface plots with shaded color bands and XY plots that included partially transparent symbols. (Both of these plot types are drawn to printer-compatible bitmaps, then the bitmap is printed.) In general fonts were larger (in some cases much larger) than they should have been.
  • Bug fix: The |TITLEn| replaceable parameters for the FileSaveAs command have been broken in the last several releases, sometimes resulting in a "NULL result for replaceable parameter..." error message.
  • Bug fix: When using shaded bands for a surface plot, roundoff error might have incorrectly forced the last legend entry to be written in the next column, so that you'd have one extra legend entry in its own column when there was clearly room for that entry in the previous column. Depending on plot size this might have resulted in that legend entry being clipped.
  • Improved on the still-mostly-undocumented feature of overlaying one document with another. The only way to access this feature at the moment is with the OverlayDocument macro/DDE command. For more information and an example see the related blog entry.

New in DPlot 2.2.6.2 (Oct 7, 2009)

  • The last several releases have allowed 2 significant figures on log scales when zooming. This generally worked fine if there was only one log cycle, but tended to create labels that overlapped each other (and didn't seem to make much sense, really) when there were two or more cycles. In this release if there is more than one log cycle, DPlot rounds zoom coordinates to 1 significant figure.
  • For 3D data and Find Volume Under Surface, the text box entries for the extents were misleading if you checked Consider entire surface and you had set the extents of the plot by zooming or with the Extents/Intervals/Size command. In that case the extents shown in the text boxes were the displayed extents, though the entire data extents would be considered in the calculation.
  • Bug fix: With the Edit Data command and 1D plots, you might have received an erroneous "nCurve > max" error message (indicating that the current number of groups was greater than or equal to the maximum number of groups (100)).

New in DPlot 2.2.6.1 (Oct 7, 2009)

  • By popular demand, added a quality setting for JPEG export. You will most likely find that the 4th of the 5 settings ("qood", the previous default) is the minimum acceptable quality. The 5th setting is lossless and so won't produce the artifacts common to JPEG files, but the file size is much larger.
  • (Licensed version only). Improved initial guesses for the equation form Y=A(X+B)^C. Previous versions tended to blow up with data that had a negative slope. Also added the ability to specify the extents of the curve generated by the fit equation.
  • Modified the Excel Add-In commands XYZSurface and XYZScatter to skip over blank cells: if any of the X,Y, or Z cells are empty, no point is added. Also added better error messages for finding bad numbers, rather than relying on Excel's generic "Type mismatch" errors.
  • Bug fix: Zooming out with the mouse wheel might have caused DPlot to crash with a logarithmic scale.
  • Bug fix: Fixed a few issues with writing %APPDATA%/DPlot/dplot.ini. In previous versions the file might have become mangled up by the macro editor.

New in DPlot 2.2.6.0 (Oct 7, 2009)

  • Very minor changes this time. Mailing list updates will not be sent. If you're a licensed user, you can get this update at the same link you received in the last update message, or with "Check for Updates" on the Help menu.
  • Fixed the boundary between peridotites and pyroxenites on the new IUGS ultramafic rock classification scale for triangle plots, and made a few changes to the label placement on the mafic rock plot to give a bit more room for the Y and Z axis labels.
  • Bug fix: Fixed a couple of minor problems with the List Peaks dialog. In particular for 3D/4D data you'd get semi-random characters in the output if you unchecked all options.

New in DPlot 2.2.5.9 (Oct 7, 2009)

  • For triangle plots, added options to draw IUGS Mafic and Ultramafic boundaries and labels for geologists and other... rock people :-). This is a beta feature, waiting on input from all the geologists reading this. If you see something wrong, please let me know. (In particular, I'm unsure about the 50% olivine boundary between peridotites and pyroxenites shown on the ultramafic scale. This agrees with the orinal requester's examples, but not with anything I've found on the internet about the subject - every reference I've found says the boundary is at 40%. In a perfect world this update would have waited until I knew the answer, but the bug fixes shown below mandated an update.)
  • For plots of 3D/4D data with shaded bands, roundoff error in the height of each legend entry might have resulted in the legend not being centered vertically on the plot, as intended. This was particularly noticeable with a large (>5 or so) legend label frequency.
  • Arrows drawn from text notes (if any) are now drawn in the color specified for the note font. In previous versions the arrows were always black. This does not apply to colors specified within the note text - only to the colors specified on the Font dialog.
  • Bug fix: An uninitialized data problem with all versions since 2.2.4.7 might have caused DPlot to crash when viewing polar charts that included a legend.
  • Bug fix: Text notes on triangle plots with the position specified in data space were not positioned correctly.
  • Bug fix: The Crop command on the Edit menu did not work correctly for 3D data if the plot used negative scale factors on the X or Y axes.

New in DPlot 2.2.5.7 (Oct 7, 2009)

  • Added the ability to specify the symbol frequency for 3D/4D scatter plots, which was previously only supported for XY plots. The corresponding SymbolFrequency macro/DDE command now also works with 3D/4D scatter plots.
  • Bug fix: In version 2.2.5.7 the new feature of turning on/off various values supplied by the List Peak Values and List Peaks within a Range commands left extra characters on the report screen.
  • Bug fix: For 2D views of random 3D points in a surface plot and contour lines (as opposed to shaded bands), DPlot did not properly respect the Z extents set with Options>Extents/Intervals/Size: whatever contour intervals were specified, those lines were drawn.

New in DPlot 2.2.5.6 (Oct 7, 2009)

  • The List Peak Values and List Peaks within a Range commands on the Info menu now allow you to specify what values to display. Choose from Minimum, Maximum, Mean, Standard Deviation, and (for XY plots) Standard Error. The default of course is to display all those values. This might save a bit of editing time if you typically use the output of these operations in a text note or export that information to another application.
  • Changed the behavior of dropping files onto DPlot. When dropping a file onto an open document window, the file is appended to that document rather than opening a new document. When dropping a file outside a document window the operation is the same as in all previous versions: a new document window is opened.
  • Bug fix: Version 2.2.5.2 introduced a new bug when interpreting blank columns in text files. A single character was erroneously interpreted as a blank cell. So if, for example, your X column was the row number, DPlot would skip over the first 9 rows of data.

New in DPlot 2.2.5.5 (Oct 7, 2009)

  • Bug fix: Due to a recent goof, if you attempted to save a bitmap image (BMP, GIF, JPG, PNG, TIF) and specified a resolution greater than 100 dpi and used non-zero dimensions for the width and height, the plot fonts, line widths, symbol sizes, plot size, etc. were scaled up (as expected) by /, but the output image dimensions were not scaled up. The resulting image was of the requested size, but only included the top left portion of the plot. It also took (depending on the resolution setting) quite a bit longer to draw than usual, because most of the plot was clipped.

New in DPlot 2.2.5.4 (Oct 7, 2009)

  • Bug fix: The new (2.2.5.3) feature allowing you to zoom in/out on 2D plots using your mouse wheel did not pay attention to the size of the table used to store zoom extents. If you zoomed more than 10 times with the mouse wheel w/o clicking the Zoom Out button on the toolbar or using the Zoom Out menu command, DPlot would overwrite other data, leading to strange behavior and possibly a crash.
  • Added a checkbox to the General Options menu command to disable zooming with the mouse wheel, for those who find this feature annoying and/or who frequently unintentionally scroll the mouse wheel. Programmatically this same feature is available with the GeneralOptions command.

New in DPlot 2.2.5.3 (Oct 7, 2009)

  • You can now zoom in/out on 2D plots using your mouse wheel.
  • Made several changes to the "Specify columns to plot" dialog boxes:
  • Modified the dialog box so that it works as expected for line lengths greater than 1024 characters. Previous versions wrapped at the 1024'th character (same as Notepad and any other application using the standard Windows edit control), making it just about impossible to tell what you were looking at.
  • You can now read files containing up to 256 columns, though the total limit on the number of curves is unchanged at 100. In previous versions you could not read a file containing more than 101 columns (for XY plots, 1 X plus 100 Y columns).
  • For XY plots the "Use these columns for Y" list now displays column headings in addition to the column index.
  • For XY plots the dialog box is now resizable, and if you increase/decrease the width then the "Use these columns for Y" list box is resized along with the dialog box. This is handy for long, somewhat similar column headings that are not shown in their entirety in the table headings.
  • Added a step plot plugin for the full version. If you elect to install this plugin you'll see "Make Step Plot" on the Generate menu.
  • Minor change to the XYYY Excel Add-In command: In previous versions the first row was used as axis labels or legend entries only if the first column, first row contained a text entry. In this version this cell may be blank, with subsequent columns in the first row containing Y labels.
  • Bug fix: There was a roundoff problem with small amplitudes on XY plots with "Specify interval". For example if you set the interval to 2.E-11 and the Y extents to 0 to 2.E-10, DPlot would erroneously determine that the high extent was less than the low extent plus some multiple (in this case 10) of the tick interval, and increase the high extent (to, in this case, 2.2E-10).
  • Bug fix: A change in version 2.2.4.6 (not erasing the background of a document window when the plot was updated, thereby making 3D animations much smoother) might have given the appearance that DPlot had crashed, when it was actually operating just fine (though with an inappropriate background). You might have run into this when, for example, creating a plot from scratch with the Edit Data command and hitting Cancel rather than OK. You'd be left with a picture of the Edit Data dialog and a depressed Cancel button. The plot in this case was not redrawn, since there was nothing to draw.

New in DPlot 2.2.5.1 (May 12, 2009)

  • Bug fix: A fairly recent change adding support for European date formats by default (d/m/y vs. m/d/y) inadvertently did not allow a year value = 0 (which you'd get with 2 digit years for the year 2000). If attempting to read one of these files DPlot would not present an error message, but neither would it produce a plot.

New in DPlot 2.2.5.0 (May 12, 2009)

  • Bug fix: The new feature of allowing shaded bands and contour lines in a 2D view of a surface plot required 1 new GDI object that was not properly destroyed after painting the plot. In general this bug would only be an issue for developers driving DPlot from another application when that app might produce many hundreds of 2D surface plots in any one session.
  • Reset the expiration date check for the trial version. If you've previously used the trial you'll be able to use this version for 30 days.

New in DPlot 2.2.4.9 (May 12, 2009)

  • Bug fix: One more time. The fix for zooming in on logarithmic scales only worked correctly for values greater than 1.0.

New in DPlot 2.2.4.8 (May 12, 2009)

  • Bug fix: There were two problems associated with version 2.2.4.7's allowing two significant figures when zooming in on logarithmic scales: 1) Roundoff errors might have resulted in the low extent being equal to the high extent, which resulted in a division by 0 error and subsequent crash. 2) DPlot did a poor job of finding the space required on the left side of a plot for the Y axis values after zooming. With the default extents (use as much of the display as possible) this might have resulted in numbers being clipped at the left edge of the screen (and the right edge if multiple axes were used).

New in DPlot 2.2.4.7 (May 12, 2009)

  • Added a blog. This will for the most part be used to echo support e-mail questions that seem interesting to me and/or that seem to come up frequently.
  • Added Both lines and shades option for 3D/4D surface plots drawn in 2D. If selected, black lines are drawn at the boundaries between shaded bands. These lines are optionally labeled in the same way that "Contour lines" plots are.
  • For 3D points on a rectangular grid drawn in 2D, amended the interpolation scheme for "Shaded bands". This was done to accommodate the above "Both lines and shades" option. In previous versions shaded bands used a bilinear interpolation scheme, while contour lines broke each grid rectangle up into 4 planar triangles with the center point being the average of the 4 corners. The bilinear method generally produced smoother-looking contours for sparse data, but that smoothness wasn't based on any insight into the data and so probably wasn't justified. In any case the bands did not match up with contour lines; in this version they do.
  • Added a "Minor line width" option for 2D surface plots. You can set the interval for "major" lines using the "Major lines every" control. As before, labels will be drawn on lines at this interval if the "Label every major line" box is checked.
  • Added "Preserve Scale" option to the Contour Options and Scatter Plot Options dialog. This setting is equivalent to the Preserve3DScaleFactor macro/DDE command, and in this context is only meaningful if after closing this dialog you use the CTRL+arrow keys keyboard shortcuts to spin the plot. If checked, then the next time this plot is drawn the scale factor used to force the plot into the specified extents (or the available document area if extents are not specified with Extents/Intervals/Size) will be used on all subsequent renderings when spinning the plot around using the keyboard shortcuts. This option is primarily useful for smooth animations; if this option is not used then the plot size will tend to increase/decrease and possibly shift left, right, up, or down as you spin it around using the keyboard shortcuts. Note that this may mean that portions of the plot will be clipped when using this option. For best results first select viewing angles that will make the plot take up the largest portion of screen space - typically this will be at azimuths of 45, 135, 225, or 315 degrees.
  • Added right-click menu items for 3D surface plots in a 3D view. You can now quickly switch to a surface plot, wireframe plot, and for 3D points on a rectangular grid to a waterfall plot or bar chart. In practice this feature is mostly useful for switching to a wireframe plot before making changes to the viewpoint using the CTRL+arrow keys shortcuts.
  • You can now control the size of the symbols used in surface plots when "Data points" is checked on the Contour Options dialog. Programmatically the size may be set with [SymbolSize(1,].
  • Amended the Color macro/DDE command to include support for setting the color of border lines used on 3D/4D surface plots.
  • On 2D views, all plot types, if you used the Print Caption option on the Text menu to display the plot filename in the lower right corner of the plot, that caption might have overlapped the numbers along the X axis.
  • For logarithmic scales on XY plots, DPlot would not allow you to zoom in to extents that were not 5 or 10 times some power of 10. In this release you can zoom in to extents with 2 significant figures.
  • Bug fix: DPlot did not correctly parse clipboard text with a date in the first column, time in the second column. In this version pasting this data from the clipboard behaves the same way that reading that data from a file would: the date and time are combined to form the X values.
  • Bug fix: If you clicked OK on the Label Points dialog for 3D data and there were no labels, DPlot crashed.
  • Bug fix: If you used the Specify Extents option on the Extents/Intervals/Size command with a logarithmic scale, for some values DPlot might have displayed the wrong value due to a small roundoff error. For example 1E-9 might have been displayed as 1.01E-9.
  • Bug fix: If you used a single custom contour level of 0 with surface plots and re-opened the Contour Levels dialog, DPlot crashed with a division by 0 error.
  • Bug fix: In previous versions DPlot automatically cropped metafiles and enhanced metafiles, eliminating excess white space. In most cases of course this was a good thing. But when driving DPlot from another program, retrieving a metafile from DPlot and setting that picture to be the background of a picture frame in that application, the resulting plot might not have had the expected aspect ratio. This was particularly noticeable with polar plots, which might not have been circular. In this release you (or rather your program) will get the metafile it asks for, including white space.
  • Somewhat related: Amended the VB btest4 and C ctest4 demo programs distributed with DPlot Jr to request a metafile size more in synch with the picture frame dimensions. Previous versions forced the width to 5 inches and the height was set proportional to the width, according to the relative frame dimensions. This worked fine for frames with an aspect ratio smaller than w/h = 5/3. The only trouble was that DPlot forces both the width and height to be at least 3 inches, so wide frames would end up producing distorted plots.

New in DPlot 2.2.4.6 (Apr 30, 2009)

  • Made one simple change that makes version 2.2.4.2's keyboard shortcuts for changing view angles on 3D views much more useful: In this release the document window background is not erased when updating the plot. Instead the previous view is retained until the new plot has been calculated/drawn to a bitmap, and that bitmap is then BLT'ed to the screen. So you can spin a 3D view around without a lot of annoying screen-flashing. For bar charts, scatter plots, wireframes and waterfall plots, if antialiasing is turned off you'll now get a smooth animation using the arrow keys. (Surface plots are a bit sluggish because DPlot draws every individual pixel.)
  • Another change related to the view angle keyboard shortcuts: when making a series of changes using those keys, only the first keypress results in an Undo file being saved. So if, for example, you spin a plot through 50 degrees with 50 CTRL+←'s then click the Undo button once, the view angles will be restored to the values that existed before those 50 operations.
  • Added ContourViewChange command, which changes the viewing azimuth and/or elevation angles for 3D views by the specified values in degrees.
  • A change in behavior for 3D bar charts: If "Borders" on the Contour Options dialog is unchecked, then bars will not be outlined in black. This change was made primarily for viewing bar charts at an elevation angle of 90 degrees (top-down) where the black lines might have overwhelmed the plot for more than a thousand or so data points.
  • DPlot does a much better job with saving high resolution images, particularly with plots for which the legend or a text note has been moved well outside the extents of the plot. If you elected to crop whitespace in the image, those text entries might have been cropped or left completely out of the image. In at least some cases attempting to save a high resolution image with text objects well to the left or above the plot might have resulted in a crash.
  • Improved placement of axis labels and numbers on 3D views. In previous versions the labels sometimes overlapped the numbers along the axes, and/or the numbers overlapped the corresponding axis.
  • Bug fix: When using "Symbol sizes in Z units" for 3D scatter plots, DPlot erroneously applied the Z scale factor to the symbol sizes twice. For very small scale factors this error might have caused an integer overflow and subsequent crash.
  • Bug fix: In many cases DPlot did not interpret column headings for 3D/4D data files correctly.

New in DPlot 2.2.2.9 (Mar 2, 2009)

  • DPlot Jr now supports file export plugins. It is distributed with image export plugins for BMP, GIF, JPG, PNG, and TIF formats.
  • The legend in XY plots may now contain line breaks (using the character sequence
  • ) in the same way that the title lines and axis labels do.
  • Version 2.2.2.7 added the ability to specify the interval between generated points resulting from Y=f(X) and Y=f(X,Y1,Y2,...) using number-format specific units. For example, if the X axis used a calendar date, then you were given the option of selecting the interval in years, months, days, hours, minutes, seconds, or milliseconds. However, "years" was rounded to 365 days and "months" to 30 days, so, for example, if the from X value was Jan 1, 2009 and dX was set to 1 month, you'd get points at X=1/1/09, 1/31/09, 3/2/09, etc. In this version years and months are evaluated as you'd expect.
  • Added a "Restore defaults" button to the Colors dialog for XY plots.
  • Added an option to the Find Volume Under Surface command for 3D plots to perform the calculation on a subset of the surface by specifying the X and Y extents.
  • DPlot will now correctly handle semicolons as column separators in text files, in addition to commas, tabs, and spaces.
  • Changed the way that 2-digit years in text files were interpreted. In previous versions year values less than 10 were assumed to be 21st century dates; otherwise the 20th century was assumed. In this release 2-digit years less than 90 are assumed to be 21st century dates. If DPlot makes the wrong assumption, you can easily adjust the date values with Edit>Operate on X and (to switch from the 20th to the 21st century) X=X+DATE(2000,1,1)-DATE(1900,1,1)
  • Licensed version only: Added the equation forms y=A*(cosh,sinh, or tanh)(B*X+C)+D to the "More Curve Fits" plugin.
  • Added |DPLOTDRIVE| and |DPLOTPATH| shortcuts to the Directory, FileOpen, and FileSaveAs macro/DDE commands. When used, these shortcuts are replaced with the drive or folder, respectively, where DPlot is installed. This may be particularly useful when running DPlot from a removable drive.
  • Bug fix: Fixed an obscure problem with the ManualScale command. If DPlot was hidden when this command was used and one or more parameters were omitted (indicating that the previous values should be retained), the plot extents were not updated correctly and the resulting bitmap or metafile used the incorrect extents.
  • Bug fix: When using the Smooth command on the Edit menu, if "Operate on ALL points" was unchecked, DPlot did not honor the "to X=" value and, depending on space allocated for the X and Y arrays, might have crashed.
  • Bug fix: When reading text files, if a space-separated date and time were found in the first column, then DPlot erroneously combined the column headings for the first two columns into the X axis label, unless those headings were surrounded by "quotation marks".
  • Bug fix: In the last several releases the ColumnsAre macro/DDE command has been broken. Several parameters were reset to 0 after the ColumnsAre command and before reading a file.
  • Bug fix: Changes to the plot background color were not saved to undo files, and consequently not undone with Edit>Undo.

New in DPlot 2.2.2.4 (Dec 10, 2008)

  • Bug fix: Since the addition of compressed DPlot files, the choice between "Compressed DPlot files" and "DPlot files" has been flip-flopped when using File>Save rather than File>Save As on a plot that has not previously been saved as either type. In other words, if you selected "Compressed DPlot files" in the "Save as type" box, the file was saved as ASCII text; if you selected "DPlot files" the file was saved using ZLIB compression. Thanks, David Rubin, for the assist in tracking this down.
  • Bug fix: Log scales with manually-set extents that were not an integer power of 10 suffered from roundoff problems in some cases. For example 0.005 might have been shown as 0.00499. This was a consequence of a recent change allowing up to 3 significant figures on log scales.
  • Removed a bit of legacy code that in some cases created an uneccessary delay in loading the Font dialog. In previous versions DPlot checked for the default printer, and displayed both printer fonts for that printer and screen fonts. For network printers there was often a substantial delay in retrieving printer information. The delay made sense only for printers that used printer-specific custom fonts, which to the best of my knowledge are rare in 2008. DPlot does not perform this check in this version, and displays screen fonts on the Fonts dialog. If there are any users that do use custom printer-specific fonts with DPlot, please let me know and we'll take a different approach.
  • Bug fix: The fix in version 2.2.2.2 for underflow values (magnitudes smaller than 2-1022) was handled poorly for 1D plots. This resulted in a crash when double-clicking a saved 1D DPlot file and, worse for new users, resulted in DPlot crashing if you replied Yes to "Do you want to view the example graphs?"

New in DPlot 2.2.2.3 (Dec 4, 2008)

  • Bug fix: Change in version 2.2.2.2 to reorder point label indices when deleting data points broke the Edit Data command for new plots: it was impossible to create a new plot using Edit Data.
  • Bug fix: When using the Delete Points in Box command, point indices of point labels were not updated correctly. The label might have then pointed to the previous or next data point.
  • Bug fix: Several versions ago writing the settings file when closing DPlot (or DPlot Jr or DPlot Viewer) was streamlined and sped up, primarily to get around overzealous antivirus programs being a bit too careful about files written to your Application Data folder. The end result was to make writing that file much faster for everybody... that's not the bug :-). The file was wiped clean and only the settings pertinent to a given program were written to the file. Since DPlot, DPlot Jr, and DPlot Viewer all share the same settings file, this meant that the most recently used equations, for example, were not saved when running DPlot Jr or Viewer. More importantly for licensed users of DPlot, your registration information was not written to the file if you ran DPlot Jr or DPlot Viewer, so you'd be prompted for that information again the next time you ran DPlot.

New in DPlot 2.2.2.1 (Nov 21, 2008)

  • Bug fix: A change in version 2.2.1.7 might have led to DPlot crashing after reading data files if the "Automatically read preference file based on filename" option was checked.
  • Bug fix: Starting with version 2.2.1.0, a synchronization problem with updating settings upon exit might have resulted in the settings file being deleted if one or more macro editor windows were open at the time you shut down DPlot. This meant losing previously-used equations, default paths, line widths, etc. For licensed users this would also result in being forced to re-enter your license information the next time you ran DPlot.

New in DPlot 2.2.1.7 (Nov 1, 2008)

  • When exporting 8-bit bitmap images, DPlot now forces the use of the more rigorous color quantization routine for large images (large in this case means more than 3500 pixels wide). The default, faster color quantization routine performs poorly with large images, often producing the wrong background color and/or replacing symbol or line colors with the background color.
  • DPlot does a better job of estimating bitmap dimensions for image export when you use a resolution setting greater than 100 dpi. In previous versions, the estimated dimensions were often too small (resulting in parts of the plot being clipped) or too large (possibly resulting in "Insufficient memory" errors).
  • Improved standard error calculation presented by the List Peak Values and List Peaks within Range menu commands. In previous versions the standard error calculation tended to blow up (showing "** Overflow **" in the results) for large X values. This was particularly true for calendar dates on the X axis. In this version DPlot subtracts (Xmax+Xmin)/2 from all X's, which prevents subtracting two huge similar numbers resulting in a 0 divisor for standard error.
  • Bug fix: Legacy code used for the MRU file list used an old Windows API call that limited filenames to 128 characters. This led to bogus error messages concerning whether the file existed or not, when File>Open on the same file worked as expected. The same problem existed in several other (though less likely to cause problems) places, primarily with Preference files.
  • Bug fix: The AddCurves, SubtractCurves, and similar macro commands might have crashed DPlot if one or both of the input curves had non-positive X values and the plot used a logarithmic scale on the X axis.
  • Bug fix: For multiple column text files, if the last column contained a comment or other entry you elected to ignore (using "Pick columns to plot") but that column contained text that might be interpreted as one or more numbers, DPlot failed to read the file properly.

New in DPlot 2.2.1.6 (Nov 1, 2008)

  • Most of the dialog boxes that show a list of curves are now resizable. When resized, the list box grows along with the dialog width. This might be handy for very long legend entries.
  • The "Distance from" output now includes nautical miles in addition to statute miles and kilometers when used on a plot (2D or 3D) with either "Degrees, Minutes" or "Degrees, Minutes, Seconds" number formats used on both the X and Y axes. As with previous versions, the distance calculation assumes the plot is on the surface of the Earth.
  • If you use "Different error values for every point" and both the positive and negative amplitudes are 0, no error bar is drawn at that point.
  • The Excel Add-In and associated files are now copied to the DPlot destination folder as well as the %APPDATA% folder. This change was made primarily to assist users with limited privileges for whom DPlot was installed by an administrator: they'll still need to go through a couple of additional steps to get the AddIn installed properly. For details see Using the DPlot Interface Add-In for Microsoft Excel
  • Bug fix: If "Unique colors for each bar" was set as a default value for bar charts, then for other plot types DPlot might have saved too many colors to a DPlot file. This would subsequently result in an error message when reading the "ColorsEx" entry from a DPlot file.
  • Bug fix: The "fix" in version 2.2.1.4 for the XYYY command with a varying number of rows in the selected columns might have resulted in not very helpful Excel error messages, and the function would then fail to produce a plot.

New in DPlot 2.2.1.5 (Sep 29, 2008)

  • Improved initial coefficient estimates for the power series equation form (y=AxB+CxD+...) in the "More Curve Fits" module. In previous versions the initial estimates were all but useless, and the solution procedure rarely converged to a good solution unless you manually entered good initial guesses.
  • Bug fix: DPlot might have entered an endless loop while ""Finding extents of data ..." when using a log scale with one or more curves hidden if any of those hidden curves included non-positive values.

New in DPlot 2.2.1.4 (Sep 29, 2008)

  • The Integrate command now allows you to select multiple curves to operate on.
  • If a CSV file contains a date/time group in the first column, the number format for the X axis is set to "Date and Time" rather than "Calendar Date", as it was in all previous versions.
  • When reading a CSV file DPlot will now interpret one or more spaces delimited by quotation marks (e.g. " ") as a blank entry (either numeric or a text label, depending on previous rows) rather than a text string. This change was made to accommodate output from Windows' Perfomance Monitor (perfmon.exe), but might also effect output from other applications.
  • Bug fix: The popup tooltips displaying data point coordinates might have been stranded on the screen if you used the keyboard shortcuts for Undo and/or Redo.
  • Bug fix: Symbols in bubble plots may not have been clipped properly if you zoomed in or otherwise set the plot extents.
  • Bug fix: The Excel Add-In XYYY command retrieved the number of data rows from the last selected column, which worked fine unless the last column had fewer entries than previous columns. In that case data from previous columns after that last row was ignored.
  • Bug fix: The LAS well log file import plugin did not allow you to pick data sets that did not have a description (the text following the : in the ~C block). In addition, the plugin now allows you to choose between the description, the mnemonic, and "none" for the legend entries of each curve.

New in DPlot 2.2.1.3 (Sep 4, 2008)

  • For 3D/4D scatter plots, the behavior of the OK button on the Options dialog now mimics the same for 3D/4D surface plots: if you click OK w/o making changes, or click OK after clicking Apply and there are no subsequent changes, the plot is not redrawn. This can be a significant time savings for very large data sets.
  • Cleaned up a few minor problems with mouse-related code. When zooming and performing other operations that trapped the mouse, the normal checks for mouse position and clicks were still performed. So you might have seen inappropriate messages on the status bar or have been able to bring up a right-click menu at an inappropriate time.
  • Amended the Excel Add-In ZGrid command to properly handle blank cells. Also added ZScatterTable Add-In command, which is similar to ZGrid but produces a scatter plot rather than a surface plot.
  • You may now use environment variables in the filename argument for a FileOpen command. For example:
  • [FileOpen("%USERPROFILE%My DocumentsDPlot est.csv")]
  • will be interpreted as
  • [FileOpen("c:Documents and Settings\My DocumentsDPlot est.csv")]
  • on most Windows XP systems.
  • Added Title1, Title2, Title3, and Title4 request items, which may be used in a call to the DPLOTLIB function DPlot_Request or more generally in a DDE XTYP_REQUEST transaction to retrieve any of the four title lines of a plot.
  • Added code to each of the DPLOTLIB example programs to eliminate the possibility of multiple simultaneous calls to DPLOTLIB functions. Generally this was an issue with large plots and an itchy trigger finger on the mouse, and might have resulted in a "DPlot is busy" or similar error message.
  • On the Note dialog box, if Draw arrow to is checked then you can click on a plot to specify the location that the arrow points to. Also added new Snap cursor to nearest data point box. If checked and you click within roughly 100 pixels of a data point, the text boxes will be filled with the coordinates of the closest point, rather than the scaled mouse position. You may also use the mouse to click on the desired location of the note.
  • Bug fix: Text notations were not drawn in the correct location in 3D projections of 3D/4D data unless the X:Y:Z scale factors were 1:1:1.
  • Bug fix: With the "More curve fits" exponential equation forms, if the input data was exceptionally noisy then the procedure failed to come up with meaningful initial guesses. This in turn might have led to an untrapped overflow error, causing DPlot to crash. The curve fit module now does a better job of finding useful initial values for the coefficients, and also does a much better job of trapping overflow errors for exponential fits.
  • Bug fix: When saving a file the default file extensions were fouled up for all file export plugin formats (wav files and all bitmap images) if you did not specify an extension in the Save As dialog. This problem has existed in the last several releases.
  • Bug fix: The procedure used to determine file type when you a) drag/drop a file onto DPlot, b) use Explorer's "Open with..." feature, or c) open a file with a [FileOpen()] macro command w/o specifying the file type was broken on Windows Vista if you attempted to open a file below the Windows folder. (For example a WAV file in C:WindowsMedia.)
  • Bug fix: Introduced a new resource leak starting with the 32-bit Toolbar Icons command on the View menu in v2.1.8.1. If you produced several thousand plots without shutting DPlot down you would likely run into problems on all systems other than Vista.
  • Bug fix: The Histogram command crashed if the input magnitudes were all identical.

New in DPlot 2.2.1.0 (Aug 11, 2008)

  • Better support for linking data from other applications

New in DPlot 2.1.5.8 (Feb 19, 2008)

  • Bug fix: An obscure problem was introduced in version 2.1.5.6 that resulted in strange problems (toolbar bitmaps disappearing, all lines being drawn with a single-pixel black line, and other assorted weirdness) after saving several thousand bitmap images. Thanks to Sven Henze for the assist in tracking this down.

New in DPlot 2.1.5.6 (Feb 15, 2008)

  • Changed the behavior of the image export plugins (BMP, GIF, TIF, etc.) to make better use of the resolution setting. In past versions this setting was only used to set the resolution field in the image header for formats that supported it (TIF in particular) and otherwise had no effect on the contents of the image. The result was that in most cases the images saved with the plugins were essentially screenshots. In this version if the resolution entry is non-zero then font sizes, line weights, and plot dimensions will be scaled up by resolution/(screen resolution). So if, for example, you have specified the plot size using the Extents/Intervals/Size menu command, then the box around the plot will be (size in inches) * resolution pixels. This change may require you to pay a bit more attention to the image width and size entries. If you use 0 for either the width or height of the image and do not specify the plot size with Extents/Intervals/Size, then the output image will be the document window size times resolution/(screen resolution). For a maximized document window this might easily result in an Insufficient memory error when attempting to create the image. For best results with a non-zero resolution, always check the Specify size option under Extents/Intervals/Size.
  • Added /sp command line switch for preference files. If /sp is used, the specified preference file will be processed for all new documents during the current session, much as %APPDATA%DPlotPreferencesdefault.set is used in all previous versions. The /s command line switch continues to work as in all previous versions: the preferences file will only be used with files specified on the command line.
  • Bug fix: In the last several versions of DPlot if you entered a non-positive value for an extent with a logarithmic scale using the Extents/Intervals/Size menu command, DPlot would present the appropriate error message, but then crash.
  • Bug fix: DPlot considered the size and position of text notes when finding the extents of metafiles, whether the text note was hidden or not. This might have resulted in unnecessary white space if a note was placed outside the extents of a graph and then hidden.
  • Bug fix: On an XY plot with only 1 curve whose X values were not monotonically increasing, the Smooth command proceeded as if everything was in order but produced no new curve (nor any error message). In this version the Smooth command will present an error message and suggest using the Sort command on the Edit menu.
  • Bug fix: For 3D views of 3D or 4D data, setting the line widths of the major or minor axis lines to a negative number should have resulted in those lines not being drawn. And it does, unless Antialias objects on display output is checked (General command on the Options menu). In this update those lines will not be drawn, regardless of whether antialiasing is used or not.

New in DPlot 2.1.3.1 (Dec 10, 2007)

  • Bug fix: DPlot allowed metafiles larger than 32767 units wide or tall (about 12.9 inches). The maximum addressable coordinate in a metafile is 32767, so this resulted in these files being clipped in the target application.
  • Bug fix: The function parser (used by the Y=f(X) and similar commands) might have returned a value smaller than the minimum allowable magnitude for a double precision float: 2^-1022, or about 2.2251E-308. Internally this caused no problems; these values were simply truncated to 0 if used in any further calculations. But if these values were saved to a DPlot file or other ASCII text file and then re-read by DPlot, the result was generally a crash.

New in DPlot 2.1.3.1 (Aug 13, 2007)

  • Added 2D vector plots. Added corresponding VectorPlot and VectorPlotOptions macro/DDE commands.
  • First cut at antialiased lines. If the (now renamed) "Antialias objects on display output" option on the Options>General dialog is selected then these items (in addition to symbols) are antialiased (display monitor and bitmap images only, not printed output or metafiles):
  • line segments and arrowheads for vector plots, point labels, etc.
  • coordinate axes for 3D views of 3D plots
  • grid lines on 3D views of 3D points on a rectangular grid
  • waterfall plots
  • coordinate axes of triangle plots
  • radial and circular grid lines and outer border of polar plots
  • displacement and acceleration lines on tripartite grids
  • and finally, curves on XY plots and contour lines on 2D views of surface plots.
  • Please note that this feature is a big performance hit on large data sets (10's of thousands of points), and can take 10x as long to render as the same plot without antialiasing. Primarily for that reason this option is turned off by default with new installations of DPlot.
  • Antialiasing works best for line segments that are several line widths long or longer, and doesn't work well at all for 1-pixel long segments.
  • ZGrid Add-In command now correctly handles blank cells. In previous versions blank cells were interpreted as Z=0.
  • Added atan2 function to function parser (used by Y=f(X) and similar commands.)
  • Display of Calendar date number format is more consistent. In previous versions, if the date format was set to "" then the time was displayed on the corresponding axis, but within point labels and popup coordinate windows the label was blank. In this version point labels and popup windows will display the time, given those same settings.
  • Amplitude Limits command now works with bar charts in addition to other XY plot types.
  • Bug fix: Arrowheads on the coordinate axes for grid type=Axes only were drawn in the wrong color... unless that color was black
  • Bug fix: ClipY and EditDecimate macro/DDE commands ignored any previous SelectCurve command, always operating on all curves.
  • Bug fix: For output to the display or to a copied or saved bitmap, X and Y axis labels on horizontal bar charts were not oriented correctly unless the document window was maximized.
  • Bug fix: The curve indices for fill regions were not updated properly when a curve was erased. So if, for example, a fill area used curve #3 for one boundary and you erased curve #2, the fill area would then use what was previously curve #4 for the boundary.
  • Bug fix: Fill regions created with the Fill Between Curves command were not clipped to the plot extents correctly in standard and enhanced metafiles.
  • Bug fix: As with the Remove Random Spikes command, fixed in 2.1.2.8, several other commands correctly did not list hidden curves, but did not take omitted curves into account when retrieving curve indices to operate on. For example if the 2nd curve was hidden and you selected curve 3 to operate on, the operation would be performed on curve 2 rather than curve 3.
  • Bug fix: Smooth command might have crashed if you clicked the Cancel button.
  • Bug fix: Smooth command did nothing if the X values of a selected curve did not have a constant spacing. Since this command uses an FFT, it is designed to operate on curves with a constant spacing. But this should not be a strict requirement, and that requirement has been removed.

New in DPlot 2.1.2.8 (Jul 31, 2007)

  • Another attempt (this one successful), at eliminating the "The system DLL user32.dll was relocated in memory..." error message associated with Windows XP SP2.
  • Added Balanced Friedlander equation to the More curve fits plugin. This is very similar to the Friedlander equation, with the exception that the normalized time is modified with an exponent. This change allows the equation to model the negative phase of a pressure-time history.
  • Hidden curves (View>Hide curves) are no longer included in the results of the List Peaks or List Peaks in Range commands.
  • Added SetFilename DDE command. This command allows you to set the default filename of a graph produced programmatically. It does not save a file. The specified filename may be overridden by the user if/when the user saves the file.
  • Bug fix: The Remove Random Spikes command correctly did not list hidden curves, but did not take omitted curves into account when retrieving curve indices to operate on. For example if the 2nd curve was hidden and you selected curve 3 to operate on, the operation would be performed on curve 2 rather than curve 3.
  • Bug fix: The function parser did not properly trap overflow errors for the exp function. Arguments larger than about 709.78 caused DPlot to crash.
  • Bug fix: Added many traps for math errors (overflow, division by 0, etc.) to the More curve fits plugin. These were generally a problem when trying to fit an ill-suited equation form to the input data, e.g. X raised to a ower for input that oscillated around Y=0.
  • Bug fix: On XY plots with two Y axes and different number formatting options on those axes, DPlot used the number format for the left axis to show Y values associated with the right axis for mouse position on the status bar, popup "tooltip" windows showing coordinates of the point under the mouse, and in the Scan X,Y dialog.
  • Bug fix: On XY plots with multiple Y axes, the second Y label was truncated if longer than the label for the primary Y axis. This bug was introduced with the inclusion of horizontal bar charts in version 2.1.2.5.

New in DPlot 2.1.1.8 (Apr 28, 2007)

  • Added GCD (greatest common divisor), LCM (least common multiple), FPOWER (raise a number to a fractional power), ROUND (round a number to a specified number of places), and MROUND (round a number to a multiple of another number) functions to the equation parser, for use in Y=f(X) and similar commands. FPOWER is particularly useful for finding exponents of negative numbers (which would give invalid argument errors with the ^ operator).
  • Bug fix: Fractions number formatting sometimes resulted in a fraction of 1/1.
  • Bug fix: More curve fits command sometimes added a spurious character to the end of the legend string for the fitted data.
  • Bug fix: A recent change to the code that converts mouse position to data values for display on the status bar might have caused a crash with very large numbers.
  • Bug fix: An uninitialized data problem might have caused the FilePrintMultiple macro/DDE command to fail with an "Error processing this command" for no good reason.

New in DPlot 2.1.1.6 (Apr 11, 2007)

  • Bug fix: Recent change allowing arrows with text notations did not properly save arrow information to DPlot files.
  • Bug fix: Last update's change using temp files for reallocating arrays under low memory conditions did not properly delete the temp file when done with it.

New in DPlot 2.1.1.5 (Apr 5, 2007)

  • You can now have both horizontal and vertical error bars assigned to the same curve.
  • For 2D views of zoomed plots you can now restrict the pan direction to horizontal, vertical, or 45 degrees by pressing the Shift key as you drag the mouse. Also improved pan feature in general by eliminating roundoff errors that sometimes caused the plot extents to drift even though the drag direction might have been perfectly horizontal or vertical.
  • Improved data entry in dialog boxes for Degrees, minutes and Degrees, minutes, seconds number formats. The value 30�24'36" may be entered as 30d 24m 36s or 30d 24' 36", with or without the spaces.
  • Added right-click menu commands to select line widths and symbol sizes for XY plots.
  • Added "For grid lines, use independent tick marks for dependent scales" checkbox on the Multiple Axes dialog. If unchecked, the values on a dependent scale will be drawn at the grid lines as in all previous versions. If checked, values on a dependent scale will be drawn at "nice" intervals, with added tick marks.
  • Added "X values consisting of times are always sequential" checkbox to the General Options dialog. If checked, time values read from a text file or the clipboard are assumed to be in chronological order; in other words the X axis will never wrap back to the start. If unchecked, midnight is always 0, noon is always 12, etc. Added a similar option to the Options command in the Excel Add-In.
  • Moving the cursor across a 2D view of a 3D surface plot now results in the same formatted display of the values at the cursor that you get with XY plots.
  • Added Set client area command to the View menu. This allows you to set the size of a document window minus the sizing border and caption area. This feature is primarily useful for sizing a plot such that when saved to a bitmap format (BMP, GIF, JPG, PNG, and/or TIF), the image will be identical to what is shown on the display and be exactly the size specified.
  • For bitmap image export (BMP, GIF, JPG, PNG, and TIF formats), added an option to specify whether white space should be cropped from the image. If checked, the image will have a 10-pixel white space border. If unchecked, the image will use the specified dimensions, with no cropping. Added equivalent SetImageCrop macro/DDE command. In previous versions cropping was automatically performed if the width or height was set to 0 (indicating that the document window dimensions should be used) and never performed if non-zero values for width and height were set.
  • Added $YFIRST and $YLAST text placeholders. For XY plots these are replaced by, respectively, the first and last Y values in the corresponding curve.
  • Improved performance under low memory conditions in some circumstances. When existing X,Y arrays were insufficient to add data to an existing plot or read a file in which the number of points was not initially known, DPlot would always keep (if only temporarily) the original data in memory when attempting to allocate larger arrays (then copy the original data to the new arrays). With very large data sets this was prone to out-of-memory errors. In this release, DPlot attempts to do the same, but if it fails then the original data is written to a temporary file on your hard disk and the memory used to store that data is freed. After successfully allocating the new arrays the original data is restored from that temporary file. This is of course much slower than keeping the old data in memory, but might in some circumstances allow up to 2x as many points as previous versions.
  • Bug fix: For XY plots, DPlot_AddData or DPlot_AddData8 might have caused DPlot to crash if the array sizes for the specified document were not large enough to accommodate the incoming data.
  • Bug fix: Copy Data and Insert Link did not work properly for 4D surface or scatter plots and in some cases caused DPlot to crash.
  • Bug fix: New feature in Pick columns to plot dialog boxes for handling multi-line column headings did not handle parsing the headings well when the columns were space-delimited.
  • Bug fix: Uninitialized data problems might have caused Equal Intervals and Operate on Y (for 3D data) menu commands to crash.
  • Bug fix: Using text placeholders (e.g. $YMAX) in equations worked properly only using the default number format for the axis corresponding to the placeholder. Other formats might have resulted in wrong answers (dates, for example, which can be interpreted as another equation) or invalid syntax errors (e.g. PI fractions).
  • Bug fix: Reordering curves using the Reorder curves menu command or the Move Up/Down right-click menu commands on the legend did not recalculate or shift text shortcut values (e.g. $YMAX, $AREA) along with the data. So text shortcuts would reference the incorrect curves after moving a curve up or down in the order.
  • Bug fix: For multiple independent linear Y scales, the panning feature (drag the mouse or use the arrow keys on a zoomed plot) did not work well for the second Y axis unless the range in Y values was close or identical to the range in Y values on the primary axis.
  • Bug fix: Recent change allowing input of line widths in points, millimeters, or centimeters exposed a precision problem that in some cases might have made a saved DPlot file unreadable by DPlot.

New in DPlot 2.1.0.5 (Mar 2, 2007)

  • Bug fix: Starting with version 2.1 all Help files distributed with DPlot are CHM files (HTML Help). On Windows 95 and ME systems, and possibly Windows 98, calling the function to display those files caused a crash in DPlot. In this version, on all pre-Windows 2000 systems DPlot will launch a separate process to display the CHM files. Most of the Help functionality is intact; a noted exception is the popup windows in dialog boxes resulting from clicking on the question mark button on the title bar, then clicking on a control. That functionality is removed on pre-2000 systems.
  • Subscript/superscript proportion is a bit larger and easier to read. In previous versions subscripts and superscripts used 2/3 the height of the base font. In this version the ratio is 3/4.
  • Bug fix: Last version's change to the fraction number format introduced a couple of bugs related to negative fractions.

New in DPlot 2.1.0.2 (Feb 4, 2007)

  • Added Crop command to the Edit menu for XY plots and 3D/4D surface plots. This command allows you to delete all data points that lie outside a rectangle you define with the mouse.
  • Added FunctionOfXY1Y2 macro/DDE command for XY plots. This performs the same function as the Y=f(X,Y1,Y2,...) command on the Generate menu.
  • Added SUM function to the equation parser used by Y=f(X) and similar commands. This is useful for evaluating, for example, Taylor series.
  • Added several capabilities to the Fill Between Curves command: 1) You can now fill the area between a curve and any edge of the graph. Previous versions were limited to the bottom edge. 2) Added "Draw only the intersections of all areas" checkbox. If checked and more than one fill area is selected, only the overlapping region of all areas will be drawn. This feature is particularly useful for graphing the solution to systems of inequalities. For examples, see the new Graphing Inequalities and Graphing Systems of Inequalities pages.
  • The Specify Columns to Plot dialog boxes have been given a facelift. In particular long column headings are handled better.
  • Many commands on the Edit menu for XY plots will now allow you to operate on multiple curves in one operation. In previous versions the operation was only performed on a single curve. Affected commands include Average Points, Welch Depopulation Scheme, Skip Points, Smooth, and Equal Intervals.
  • For 3D views of 3D/4D plots added a Z coordinate for notations that are placed in data space (as opposed to plot space). For all plot types, added the ability to draw a line with or without an arrow from a note to a point. Added new TextNote3D and TextNoteLeader macro/DDE commands and added optional arguments to the TextNoteEx macro/DDE command to handle these new capabilities.
  • Added ClipY macro/DDE command for XY plots. This performs the same function as the Clip Y command on the Edit menu.
  • Pressing the SHIFT key while zooming forces the zoom rectangle to be square.
  • Logarithmic scaling routine does a better job of preventing overcrowding among the labels on the X axis.
  • Roundoff errors in logarithmic scaling routines might have resulted in grid lines and/or curves overlapping the border around a graph by one pixel.
  • Bug fix: Double-clicking on a curve to select it within a multiple-selection list box (e.g. with the "Operate on Y" command) did not work properly and in some cases might have caused DPlot to crash.
  • Bug fix: Elapsed time number format ignored the time format string set on the Number Formats dialog, always using hh:mm:ss. This version uses either hh:mm or hh:mm:ss.
  • Added DPlot_YFromX function to DPLOTLIB.DLL. This allows you to retrieve an interpolated Y value from a specified curve of a document produced by your program.

New in DPlot 2.1.0.0 (Jan 13, 2007)

  • Custom unevenly-spaced contour plots, new bar chart features

New in DPlot 2.0.5.7 (Jun 7, 2006)

  • New data editing capabilities, better support for date input

New in DPlot 2.0.5.3 (May 3, 2006)

  • Improved Excel Add-In features, new macro features.

New in DPlot 2.0.4.1 (Mar 5, 2006)

  • Improved Excel Add-In features.