Graph Software for Scientists & Engineers

Revision History (Archives)

9 November, 2008
Version 2.2.2.1

  • 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.
     

7 November, 2008
Version 2.2.2.0

  • Bug fix: Reading a preference file might have caused DPlot to crash, due to a mistake in storing the 2.2.1.8 setting for clipping symbols.
     
  • Bug fix: The "Use settings for current plot" option of the Excel Add-In worked correctly only on Windows Vista.
     

5 November, 2008
Version 2.2.1.9

  • Bug fix: The "fix" for the List Peak Values command in version 2.2.1.7 might have resulted in a divide by 0 error and subsequent crash.
     
  • Bug fix: The List Peaks in Range command did not work properly if DPlot was not maximized.
     

4 November, 2008
Version 2.2.1.8

  • Bug fix: The setup program for version 2.2.1.7 inadvertently included a section of test code for installing the Excel Add-In. If the Add-In had been previously installed, the setup program would delete it but fail to install it as far as Excel was concerned. Running the setup program again would generally fix the problem.
     
  • Added the ability to set the opacity of symbols on XY plots, with values between 0 (completely transparent) to 100% (opaque, the default). This feature might be useful for showing the density of data points on a plot. Opacity is ignored for output to metafiles and to displays with color depth of 256 or fewer colors. Added SymbolOpacity macro/DDE command to change this setting programmatically. Thanks to Richard Hoffpauir for the suggestion.
     
  • Added the ability to clip symbols at the boundaries of XY plots. In previous versions symbols representing points within the plot extents were always drawn with no regard for the plot boundary. Added SymbolClip macro/DDE command.
     
  • Added a couple of checks to DPLOTLIB.DLL functions to prevent bad DPLOT structure elements from crashing your program. In particular, for XY plots the DLL now checks to ensure that MaxCurves is greater than or equal to NumCurves.
     

31 October, 2008
Version 2.2.1.7

  • 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.
     

11 October, 2008
Version 2.2.1.6

  • 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.
     

27 September, 2008
Version 2.2.1.5

  • 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.
     

24 September, 2008
Version 2.2.1.4

  • 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.
     

22 August, 2008
Version 2.2.1.3

  • 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 Documents\DPlot\test.csv")]
    will be interpreted as
    [FileOpen("c:\Documents and Settings\<username>\My Documents\DPlot\test.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:\Windows\Media.)
     
  • 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.
     

12 August, 2008
Version 2.2.1.1

  • By popular demand, increased the transparency of the new zoom-in cursor.
     
  • Bug fix: Version 2.2.1.0 broke the ability to retrieve X,Y values for a curve with an XTYP_REQUEST DDE transaction. Older versions worked by specifying the curve index as CurveNN, version 2.2.1 worked with CurveNNN (three places rather than two). This version will correctly interpret all of Curve3, Curve03, Curve003, and Curve<any number of 0's>3 as a request for Curve 3's data.
     

8 August, 2008
Version 2.2.1.0

  • Several changes related to linked data:
    • DPlot cleans up the list of previously-used links that appear on the Insert Link dialog, removing duplicates.
    • When using Insert Link, if DPlot cannot establish a connection with the server it will prompt for whether you want DPlot to find and launch the server. If the server is found (or if DPlot successfully launches it) but the topic (normally a filename) isn't open, DPlot will automatically attempt to open that file and establish a connection.
    • Links established either with Insert Link or by checking the Link box on the Paste Special dialog are now saved with DPlot files. When you re-open the DPlot file DPlot will attempt to reestablish the link. If a connection cannot be established DPlot goes through the same steps mentioned above. If a connection cannot be made (possibly because the file used by the server has been renamed, moved, or deleted) you'll still get a plot, since the data was written to the DPlot file.

    Please note: For Microsoft® Office and most server applications DPlot should not have a problem finding the application given the service name (e.g. "Excel") if it is not already running and/or the topic file is not open. At this writing, for OpenOffice Calc and other OpenOffice applications this is not the case: if the server application is not running or if the topic file is not open in that application, reopening a DPlot file with an embedded link or attempting to "Insert Link" under the same circumstances will result in a "Cannot connect with..." error. It is certainly possible that this problem exists with other applications we have not tested. If you have a similar problem with some other application please let me know what application you're dealing with and the next release may cover it.
     
  • Depending on what anti-virus program you use and what settings for that program were in effect, DPlot might have taken much longer than necessary to shut down (as in 5-10 seconds instead of less than 1 second). This was due to updating the settings file %APPDATA%\DPlot\dplot.ini with several hundred individual writes. In this version the settings are written to memory and the entire file is replaced in a single write operation. This gets around overzealous virus scanning software and is generally faster whether you previously noticed a delay or not. The original problem was only noticed on Vista, but the solution will most likely benefit all Windows versions.
     
  • Reference lines may now be associated with secondary X or Y axes set with the Multiple Axes menu command.
     
  • Amended the SRTM file import plugin to optionally fill in voids in the data with an interpolation of the surrounding points. Also fixed a bug: the plugin might have become unstable if you elected to plot a subset of the file and subsequently opted to plot the entire contents of the same file.
     
  • Minor changes were made to the LAS (Log ASCII Standard) well log file import plugin based on user input. Have more suggestions? Let me know.
     
  • Added a Combine data sets command to the Edit menu for 3D and 4D scatter plots. This function will move all of the data points from the selected sets into a single set.
     
  • Added right-click menus to 2D contour plot contour line labels, to control the font, frequency, and other attributes of those labels.
     
  • Bug fix: When pasting data from the clipboard DPlot prefers HTML tables over plain text, if HTML format is available. But DPlot did not properly handle HTML format produced by MS Access, usually displaying the error message "Unable to find a pattern of data columns in clipboard text." This version properly handles Access-produced tables.
     
  • Bug fix: The Draw line segments between points setting for 3D and 4D scatter plots was not saved to DPlot files.
     
  • Bug fix: File import plugins that show a dialog box might have failed to show that dialog box if a) an earlier attempt resulted in an "insufficient memory" error message and b) you subsequently tried to open the same file. And... not so much a bug, but a design flaw: if you renamed a plugin then it would fail to display its dialog box if one existed. Thanks to Don White of Pacific Instruments for the assist.
     
  • Bug fix: If a plot had no first title line but did have a second, third, and/or fourth title line, those entries might have been shifted down farther than they should have been, possibly overlapping the plot.
     

25 July, 2008
Version 2.2.0.3

  • Starting with version 2.1.8.0 the Equal Intervals command was very inefficient in finding the bounding input X values for an output X. With several thousand input points the delay was insignificant; with several hundred thousand points or more this command was very slow, by a factor of 100 or so compared to this release.
     
  • Bug fix: Version 2.2's change removing a needless redraw when activating/deactivating document windows caused a problem at startup if you launched DPlot by double-clicking on a file associated with DPlot or ran DPlot with the Windows Run command with a file specified on the command line. Best case, this problem resulted in the file not being opened. Worst case, this problem caused DPlot to crash.
     
  • Bug fix: For selected symbol types, if you used a symbol frequency greater than 1 and the curve contained more than 1024 points then DPlot might have produced spurious extra line segments drawn from the last symbol within each block of 1024 points to the first data point in the next block of 1024 points. This problem generally effected metafiles and/or non-solid linestyles.
     

24 July, 2008
Version 2.2.0.1

  • Bug fix: In version 2.2 DPlot crashed if you selected a file from the most recently used list on the File menu if the file was not found. In addition to fixing the bug, DPlot will now offer to remove that entry from the list.
     

24 July, 2008
Version 2.2

  • DPlot files may now be saved with ZIP-like compression, and be re-opened by DPlot. This new feature makes use of the ZLIB compression library. For moderate plot sizes you will typically get a compression ratio of 2.5:1 to 4:1. Happily, for larger files the compression is often much better; in test cases I've achieved 12:1 for 100Mb files. In extreme cases (long runs of identical values, for example) the compression ratio can exceed 400:1, but this is of course unusual. These are not ZIP files and cannot be opened by WinZip® or similar archive utilities. The downside to creating compressed DPlot files is of course that they cannot be edited with a text editor unless they are first decompressed, nor can they be opened by older versions of DPlot.
     
  • Removed a bad bottleneck when working with large data sets. In previous versions if a document window was maximized and you activated another document, then switched back to viewing the original document, the plot was redrawn from scratch rather than simply displaying the saved bitmap of that plot. It was redrawn because the action of activating a maximized document causes all other documents to be "restored" and thus resized, though they are hidden. This led DPlot to delete the saved bitmaps in preparation for the next time the window was displayed.
     
  • Added the ability to set the background color of the area bound by the coordinate axes. (Recent versions include the ability to set the background color of the entire document, not restricted by the axes.) Added BkPlotColor macro/DDE command to set this color. See the new Maps page for an example of this capability in action.
     
  • DPlot does a better job handling tick mark intervals saved to DPlot files with one of the degrees or time number formats. If, for example, you used a tick mark interval of 5 minutes then this value was saved to a DPlot file as 0.0833333333333 (degrees), which might seem precise enough, but... wasn't. In this case DPlot rounds to the nearest minute if the error in doing so is less than 1 second (and in this case it is).
     
  • Modified Excel Add-In XYYY command such that it ignores hidden columns.
     
  • When interpreting multiple column text files and/or columns of values from the Clipboard, DPlot did not correctly parse text labels containing spaces unless the labels were delimited with "quotation marks". For comma- and tab-delimited files DPlot will now interpret those labels correctly.
     
  • Made several minor improvements to processing multiple-column text files: If the line preceding the data consists of all dashes or equal signs then column headings are grabbed from the previous line. For space-delimited files if the first two columns are date and time, then the labels for date and time are combined (this previously worked only for comma- and tab-separated columns).
     
  • Improved the hit test when checking to see whether you've clicked the mouse on a curve. DPlot won't register a hit on a line segment that isn't drawn, whether because the line style is 'None' or because of the Amplitude Limits setting. This change has no effect on clicking near a data point.
     
  • Modified the results reported by the Distance from command. If the X and Y values both use Degrees, Minutes or Degrees, Minutes, Seconds number format then DPlot assumes these values are longitudes and latitudes on the Earth's surface and reports the distance between points in miles and kilometers.
     
  • The Legend macro/DDE command is more forgiving if you specify a curve argument that is greater than the current maximum number of curves. In past versions DPlot presented an error message and stopped the macro. In this version the command is simply ignored. This might be handy when used in loops in which the number of curves is unknown beforehand.
     
  • Added a... well, a bit of a hack... to correct a problem caused by Vista Aero. If the application was maximized and the active child document window was maximized, the child document was short on the right side. Depending on screen resolution it might have been 4 or 16 pixels short, with the gray client area showing to the right. The problem did not occur with Windows Vista Basic or with any other 32-bit version of Windows, nor was it isolated to DPlot; it seems to be a problem in any MDI application using basic Windows MDI functionality (not MFC or VB, for example).
     
  • For the licensed version, added a file import plugin for LAS (Log ASCII Standard) well log files. For more information on LAS files see the Canadian Well Logging Society web page.
     
  • Bug fix: Point labels did not keep the intended relationship with your data when using Edit>Sort (assuming the data needed sorting). In other words if a label pointed to the nth point in a curve before sorting, it would continue to point to the nth point after sorting regardless of whether point n was moved.
     
  • Bug fix: Using the Swap X,Y command with a Mercator Projection caused DPlot to crash if all (previous) longitude values were outside the range +85°
     
  • Bug fix: On Vista, dragging the legend or a note with your mouse, or resizing the graph by dragging plot corners with your mouse, might have caused DPlot to crash if you took more than several seconds to complete the operation.
     
  • Added a beta OverlayDocument macro command that allows you to overlay one document with another. See the related General Discussion topic in the forums for more information. This feature is currently undocumented because it is not complete, and because it is very likely that some users will want to use this feature in unanticipated ways. This feature will allows to (for now, and for example,) overlay a contour plot with an XY plot, or a bar chart with a line graph.
     

11 July, 2008
Version 2.1.8.1

  • More toolbar changes and 2 new cursors to get DPlot looking more XP- and Vista-like. The macro editor now also uses 32-bit toolbar icons. The new icons generally look much better on an LCD display than on a CRT. For those that prefer the old 4-bit bitmaps, for whatever reason, added a "32-bit Toolbar Icons" command to the View menu. Uncheck that menu item to use the 16-color button images. (As in the previous version, 32-bit bitmaps are only available on Windows XP or later with a color depth greater that 256 colors.)
     
  • Bug fix: If the toolbar was dragged away from the top of the DPlot window so that it became a floating window, the Zoom in and Distance between points buttons no longer worked correctly.
     
  • Bug fix: If (for whatever reason) the \Preferences or \Macros folders below %APPDATA%\DPlot were removed without reinstalling DPlot, subsequent attempts to save a default settings file (e.g. after clicking "Make defaults" in the Colors dialog) or to save a macro failed. In this version DPlot will create those folders at startup if they do not exist, and has better error checking when attempting to save files to those folders.
     

6 July, 2008
Version 2.1.8.0

  • Added 32-bit toolbar icons and made several XP theme-related changes to the toolbar. The old 16-color toolbar button images will still be used on Windows 2000 and previous versions, and on systems with a color depth of 256 or fewer colors.
     
  • Added IndependentTicks, MultipleXAxes, and X2AxisLabel macro commands. IndependentTicks controls whether tick marks on a second X or Y axis are drawn independently of the primary Y axis when grid lines are used. The default state with grid lines is to draw labels at the grid lines.
     
  • For the X=f(T), Y=g(T) command, Y may now be a function of X instead of or in addition to T. In previous versions if X were used in the Y equation it was evaluated as 0.
     
  • The Equal Intervals command will now work on unsorted input values. If the input curve is not sorted in increasing X order, a sorted copy of the input is generated and operated on. Similarly, points with duplicate X values are removed from the input, with the Y value at the point set to the average of all points sharing that same X. In previous versions you could not use Equal Intervals on unsorted curves. If no curves on a plot were sorted then the command was disabled.
     
  • A couple of bug fixes for log scales, and one new feature:
    • If an extent was not an integer times a power of 10, DPlot skipped over the label nearest that extent for an integer times a power of 10. For example if the upper extent was set to 13, the label for 10 was not drawn.
    • For dense grid lines and labels drawn at every grid line, DPlot was a bit too aggressive in culling out labels based on whether they would fit between previously drawn labels.
    • This version of DPlot allows 3 significant figures in log scale extents. Previous versions were limited to 2 significant figures. For example if the upper extent were set to 12.5, DPlot would force the upper extent to 13.

29 June, 2008
Version 2.1.7.9

  • Cosmetic changes only. This version handles XP themes better than the past several releases. Specifically, the Error bars dialog is drawn correctly on XP and Vista, whether themes are enabled or not. On Vista there were also several problems with buttons using bitmaps - primarily text formatting buttons and color selections on the Contour and Scatter Plot Options dialogs. Licensed users can get this update using "Check for Updates" on the Help menu, or from the link in the last update notice if you are on the mailing list. Licensed users who are not on the mailing list and purchased DPlot within the last two years may sign up to receive instructions for downloading this update.
     

26 June, 2008
Version 2.1.7.8

  • Symbol outlines on XY plots may now be any color (previous versions were limited to black outlines). Added SymbolOutlineColor macro/DDE command to handle this new capability.
     
  • Added a switch to fill the interior of hollow symbols with the plot background color on XY plots. Added SymbolFillBackground macro/DDE command.
     
  • Changed the behavior of logarithmic scales with dependent X or Y axes. In all previous versions tick marks were drawn on the dependent scale at the same position as the tick marks on the primary scale, and the labels were the values from the primary scale with the scaling equation applied. For example with a primary scale of inches from 1 to 10 a dependent scale in centimeters would show values of 2.54, 5.08,...,25.4. In this version if you choose a box around the plot with tick marks or grid lines with "use independent tick marks on dependent scales" checked, then the secondary scale will show tick marks and values at more natural intervals. In this example 3,4,5,...,10,20 centimeters, depending on the options selected for log scale tick marks.
     
  • The second Y axis label (used for multiple axes) may now be rotated 180 degrees such that the base of the text faces the plot. Added Y2TopDown macro/DDE command to change this setting programmatically.
     
  • Added formatting codes for overbar (also called overline), e.g "{\oX}=23.6" will be presented as X=23.6. You may also add characters from the Wingdings, Wingdings 2, and Wingdings 3 fonts to title lines and axis labels, notations, legend entries, point labels, etc. For more information see the Help topic for the specific text entry you'd like to use these features in.
     
  • Modified the behavior of View>Zoom. You can press the <Esc> key to abort the operation either before clicking on the plot or while dragging. And if you simply click on a point rather than dragging, or if the zoom rectangle has no area (height or width are 0), Zoom is now equivalent to the CTRL+2 keyboard shortcut: the plot will be zoomed by a factor of 2 on the current mouse position.
     
  • Bug fix: It was possible to cause DPlot to enter an endless loop with a logarithmic scale on the Y axis after hiding several curves if "Recalculate extents of XY plots after hiding/unhiding curves" was checked.
     
  • Bug fix: Starting with version 2.1.6.7 you've been able to resize a 2D plot by dragging plot corners with your mouse. As a consequence of that change, zooming in on a plot with the final cursor position in any corner of a plot might have resulted in a stranded drag handle (an inverse video square) in that corner.
     
  • Bug fix: The macro editor might have crashed on a ForFilesIn loop if no files matching the specification were found.
     
  • Bug fix: Antialiasing was temporarily turned off when viewing the Symbol/Line Styles dialog. If you accepted changes on that dialog (which caused an undo file to be saved), and subsequently used Edit>Undo to undo those changes, antialiasing was turned off, because it was turned off at the time the undo file was saved.
     

15 June, 2008
Version 2.1.7.7

  • Fixed a couple of conflicts that caused problems with the DPlot document icon (primarily in Explorer). For those that follow this sort of thing: 1) The default options with the UPX compressor end up destroying all but the first embedded icon in the executable. UPX has been used instead of ASPack with the last half dozen or so versions because ASPack-compressed executables ended up giving an invalid digital signature on Windows Vista. 2) Including a manifest file (used to force DPlot to use XP-style dialog controls) in the executable's resources didn't work well with the resource compiler used with DPlot. In this release the manifest file is not compiled into the executable but is kept separate, which has the added benefit that if you don't care for the XP-style controls, you can delete dplot.exe.manifest and restore the Windows 2000-style controls. Installing the update should fix the document icon used for documents associated with DPlot. If it doesn't (because you've attempted to solve the problem yourself), it may be necessary in Explorer to select Tools>Folder Options>File Types, select GRF files, then click the "Restore" button if it is present. In isolated cases it may be necessary to reboot, but this is unlikely.
     

13 June, 2008
Version 2.1.7.6

  • Added keyboard shortcuts for zooming in on XY plots and 2D views of 3D data. CTRL+2, CTRL+3, CTRL+4, and CTRL+5 zoom in by factors of 2, 3, 4, and 5, respectively, centered on the mouse position. If the mouse is not within the plot when these shortcuts are used the new extents are centered on the current center of the plot. CTRL+1 is equivalent to selecting View>All.
     
  • Bug fix: If the Force circular plots option for polar plots was checked and you did not specify the plot size under Options>Extents/Intervals/Size then DPlot fouled up calculating the largest possible plot size to fit a printed page, which in turn caused fonts to be scaled down to the point that in most cases they were not legible.
     

8 June, 2008
Version 2.1.7.5

  • Bug fix: If Engineering Number Format was used along with a checked Fixed number of decimal places, DPlot might have crashed when moving the cursor across the plot.
     

4 June, 2008
Version 2.1.7.4

  • Bug fix: Version 2.1.6.8's feature of setting the legend for data pasted from DPlot to "Copy of..." was poorly implemented, and caused memory problems when pasting data from (primarily) Excel. The problem generally resulted in a crash after pasting more than about 50,000 points.
     
  • Amended SRTM file import plugin to allow you to skip rows/columns in the file. The resulting plot is of course coarser, but this feature will allow you to plot a full 1°x1° grid without hogging > 100Mb RAM.
     
  • Amended Garmin GPX/Training Center file import plugin to plot speed in addition to elevation and/or heartrate. Speed is not a direct measurement but is derived from distance and elapsed time. For GPX files (as opposed to Training Center TCX files), distance calculation is slightly more accurate than in initial version.
     
  • Improved error messages for out-of-memory conditions for 3D views of 3D data. This generally was not an issue before adding support for SRTM files.
     

2 June, 2008
Version 2.1.7.3

  • Notes may now be center- or right-justified.
     
  • Added support for reading point labels from the third column of text files (using file type "D" e.g. CSV files) for XY plots, the fourth column for 3D text files (file type "K") and from the Clipboard when using Paste Special. To read labels from a text file you must check the "Pick Columns to Plot" box on the Open dialog box.
     
  • For the licensed version only, added support for Garmin GPX/Training Center files and for NASA Shuttle Radar Topography Mission (SRTM) elevation data.
     
  • Amended the behavior of Box-and-Whisker plots and Dot Graphs using the new logarithmic scaling feature. For log scales, the mean is taken as 10 raised to the power of the mean logarithm. For mean-based Box-and-Whisker plots, the box and whisker limits on logarithmic scales are Mean + (Std. Dev. or Std. Error)^(multiplier).
     
  • Changed how fonts are resized on a display when "Specify plot size" is not selected. In previous versions fonts were always scaled down by the ratio of the actual document window size to the size of a maximized document within a maximized DPlot. This worked well if you typically ran DPlot maximized, but with today's larger monitors many users don't run DPlot maximized and fonts were often scaled down to the point of being illegible. In this release this font scaling only takes place if the document window's client area is smaller than 800x600. This change has no effect if "Specify plot size" is used; in that case font sizes are, as before, kept proportional to the specified plot size.
     
  • Added Catenary curve equation form to the curve fitting plugin.
     
  • Eliminated unnecessary redrawing when restoring DPlot from a minimized state.
     
  • Bug fix: International settings for decimal points and number formats other than the default caused problems for text placeholders within equations within titles, legend entries, notes, etc. For example if your decimal symbol was a comma then "Log(Mean)=$=(log($MEAN(1)))" with $MEAN(1)=10.2 would have been evaluated as log(10,2), which would then be replaced with "Log(Mean)=<Too many parameters>". Other number formats might have resulted in "<Syntax error>".
     
  • Bug fix: The recent addition of the "Label Location" controls on the Point Labels dialog box did not take into account that labels might have been added programmatically and the location set to an offset value rather than absolute coordinates. Fixed this problem and added an option to specify the location as either an offset in physical units or as an absolute position in data space.
     
  • Bug fix: Undo did not work properly on several point label changes.
     
  • Bug fix: Many text boxes on dialog boxes use the same number formatting as the corresponding axis. For the most part this has worked fine, except that percentages were not interpreted correctly. If you entered or accepted a value as <number>%, DPlot most likely replied with the error message "Syntax error: unrecognized symbol."
     
  • Bug fix: The ZTABLE plugin did not correctly handle some combinations of column separators. Commas, tabs, and spaces all worked correctly, but, for example, a space followed by a comma followed by another space did not. In the worst case this might have caused the plugin to crash DPlot.
     
  • Bug fix: Precision problems might have caused strange results with "Degrees, Minutes, Seconds" number formatting; e.g. 5° 10' 0" being presented as 5° 10' 1.24E-12"
     
  • Bug fix: In the last several releases the licensed version has fouled up with new installations on Windows Vista, reporting "LoadLibrary failed on..." with all plugin modules until you correctly entered your license information and restarted DPlot.
     

24 May, 2008
Version 2.1.7.2

  • Amended operation of the DeleteRefline macro/DDE command. If the index argument is 0, the last-created reference line is deleted.
     
  • Added $LENGTH Text placeholder for XY plots. $LENGTH is replaced with the dimensionless length of the associated curve.
     
  • Bug fix: Truncate X might have operated on the wrong curve(s) if any curves were omitted from the list.
     
  • Bug fix: If Mercator Projection was selected for the first document then any subsequent documents for which Amplitude Limits was not explicitly set OFF would have amplitude limits turned on and set to +/- 85. In plain English, the Y values on new plots would be limited to +/- 85, with points outside that range ignored.
     
  • Bug fix: If Elapsed Time Number Format was used on any axis then the display of the data values using the Edit Data menu command was fouled up.
     
  • Bug fix: Reference Lines dialog did not use sufficient precision in the reference line value when the corresponding axis used one of the time number formats and the value included fractional seconds. The reference line was drawn at the correct location initially, but re-opening the dialog and clicking OK without making any changes would result in the value being truncated to whole seconds.
     
  • Bug fix: Numbers entered in dialog boxes in hexadecimal format (i.e. 100=0x0064) were not interpreted correctly. Attempting to do so usually resulted in an erroneous MessageBox concerning the lack of an operator in the "equation".
     

15 May, 2008
Version 2.1.7.0

  • No changes in functionality. Changed the compression program used to reduce the size of all executables so that Windows Vista will correctly report "The digital signature is OK". In all previous versions, Vista erroneously reported "The digital signature is not valid", which might have caused some concern by administrative types or anybody who pays attention to code signing.
     

14 May, 2008
Version 2.1.6.9

  • Bug fix: (Trial version only). Version 2.1.6.8 contained a certificate verification routine that failed on Windows Vista.
     

12 May, 2008
Version 2.1.6.8

  • Box-and-whisker plots and dot graphs may now have a logarithmic scale. Scaling may be set programmatically with the new Stat_Scaling macro/DDE command.
     
  • For XY plots, if you copy/paste a curve into the same document then the new curve's legend will be "Copy of <source legend>", or "Copy of Curve x" if the source curve has no legend entry.
     
  • Increased the maximum number of reference lines from 50 to 100. (This was needed for a user plugging in many reference lines in place of grid lines at desired locations different than those chosen by DPlot. New options for grid lines will be coming soon.)
     
  • Bug fix: The legend in 2D contour plots might have been clipped when saving a bitmap image and/or copying a bitmap to the Clipboard.
     
  • Bug fix: An error in processing Campbell Scientific datalogger files might have resulted in overwriting another area in memory, causing later unpredictable behavior. In the last DPlot update this might have resulted in a false positive when testing for a pirated version of DPlot.
     

2 May, 2008
Version 2.1.6.7

  • Probability scales may now range from 0-1 instead of the default 0-100. Among other things, this allows you to use Percent number formatting on a probability scale. Amended ProbabilityFlags macro/DDE command to take account of this option.
     
  • For Bubble plots, the mouse hover tooltip gadget now shows the bubble magnitude as "Z=" in addition to the X and Y values.
     
  • The maximum number of decimal places on the Number Formats dialog has been increased from 8 to 12.
     
  • Slightly modified the way Scan X,Y works: if the Shift key is pressed, then clicking on the scroll bar arrows or using the arrow keys moves 10x whatever the current increment is.
     
  • Increased the maximum number of plugin modules (Generate, File Import, or File Export) from 20 to 50. This will primarily be of interest to those developing their own plugins for DPlot.
     
  • Added a placeholder for macro/DDE commands to specify a curve or data set by entering one or more substrings from the legend associated with that curve or data set. (See the description of the SelectCurve command.) For example [SelectCurve(LegendHas("ABC","DEF"))] will select the first curve whose legend contains both ABC and DEF. LegendHas may be used in any command in place of a curve index. If the search fails, no replacement is made (which will subsequently result in an error message when attempting to interpret LegendHas("substring") as a number). Thanks to Ian from Tata Motors for the suggestion.
     
  • You may now resize a 2D plot by dragging any corner of the plot (in addition to using Specify Plot Size). When sized using this method, Specify Plot Size is turned on if not previously on. The size will be rounded to the nearest tenth inch, millimeter, or centimeter, depending on the default measurement units selected under Options>General. Dimensions might be subject to the constraints of the plot type: triangle plots will always be an equilateral triangle, Mercator projections will retain the correct shape, etc.
     
  • Bug fix: 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) might not have been clipped properly. In this release DPlot relies on its own internal clipping rather than using Windows' built-in clipping algorithm if the plot extents are less than 1/20 of the full extents of the data, in either direction.
     
  • Bug fix: If "Axes only" was used for the grid type on an XY plot, in metafiles the arrowheads on the axes might have been clipped.
     
  • Bug fix: The function parser (used in Y=f(X) and similar commands) might have erroneously returned a "Too many parameters" error for functions of more than two arguments in which the last argument was another function, e.g. NORMDIST(x,0,SQRT(0.2)).
     

9 April, 2008
Version 2.1.6.6

  • Preference files will now include line styles, symbol styles, line widths, and symbol sizes for all curves. Previous versions only stored this data for the first 20 curves.
     
  • Spin buttons throughout DPlot are now forced to the designed width. In previous versions spin button width was set to the width of a standard scrollbar (user-settable with Control Panel). This led, in some cases, to overlapping controls if you increased the scrollbar width above the default value.
     
  • Looks only: DPlot now uses the look of XP-specific common controls (buttons, checkboxes, etc.) on XP and Vista. Welcome to 2003 :-)
     
  • Bug fix: A saved DPlot file containing XY data might have erroneously saved the data as if the X axis had equally-spaced values if at any time the data did have a constant spacing but you then used Delete Points in Box to delete one or more values before saving the file.
     
  • Bug fix: A roundoff error might have resulted in symbols being 1 pixel off on logarithmic scales. This was generally most noticeable with symbols using crossed lines.
     
  • Bug fix: List Peaks might have crashed with 3D data.
     
  • Bug fix: If Data points was checked on the Contour Options dialog for randomly-spaced 3D data, symbols were drawn at each point regardless of whether that point lie outside extents set with the Extents/Intervals/Size command.
     

27 March, 2008
Version 2.1.6.5

  • DPlot will now correctly handle blank entries in CSV files for "quoted" values (date and time combinations, for example). In previous versions blank quoted entries were only handled correctly if represented by two consecutive quotation marks; for two consecutive delimiters (commas or tabs) in place of a quoted value, DPlot would have stopped processing the file at that point, deciding that the data type for that column didn't match the corresponding column in previous lines.
     

23 March, 2008
Version 2.1.6.4

  • Corrected two problems with DPlot's FFT routine that have been present from the start: a) The first point in the FFT should be equal to any offset from zero in the input record. This value was off by a factor of 2. b) For an input number of points equal to a power of 2, the output FFT was normalized by dividing by N, when it should have been divided by N-1.
     

21 March, 2008
Version 2.1.6.3

  • Bug fix: It was possible to cause an integer overflow (crashing DPlot) with the Y=f(X) and similar commands if the range in values divided by the selected interval was greater than 2^31. This problem has actually been present for years, but was made much more apparent by the recent change of dynamically showing the number of points that would be generated by the given extents and interval.
     

18 March, 2008
Version 2.1.6.2

  • A change in version 2.1.6.0 to remember the Pick Columns to Plot setting caused DPlot to display the Specify Columns to Plot dialog when opening a file on the command line. In this release files opened by a command line operation will not display that dialog, regardless of whether that option was previously selected.
     
  • Bug fix: If you clipped the Z extents of a 3D view using Extents/Intervals/Size and elected to draw grid lines on the surface, in rare cases an integer overflow might have caused DPlot to crash, particularly when rendering to a high resolution device like a printer.
     
  • Bug fix: The Multiple option on the Print dialog might have crashed DPlot the first time you selected "Select All" due to an uninitialized data problem.
     

12 March, 2008
Version 2.1.6.1

  • Bug fix: A recent change meant to improve on DPlot's default tick mark intervals might have resulted in a crash if Specify extents was checked and the lower limit was a negative value with a larger magnitude than the positive upper limit.
     
  • Bug fix: Bar charts were not drawn properly to enhanced or standard metafiles if you zoomed in on the graph or set the extents of the plot to some subset of the entire data. This bug effected both metafiles copied to the Clipboard and saved files.
     
  • The Y=f(X) command now presents the from X and to X values using the current number formatting for the X axis. (Previously, these values always used the default number scheme). Previous values used in this command will be displayed using more significant figures than in previous versions (Date and Time, for example, will show times down to microseconds when appropriate). And the dialog now shows the number of points that will be generated using the from X, to X, and with interval dX settings. This functionality will be added to the other curve/surface generating commands in a future release.
     

6 March, 2008
Version 2.1.6.0

  • Amended the BMP, GIF, PNG, and TIF file export modules to optionally use a better color quantization routine when saving 8-bit images from displays with greater than 8-bit color depth (which, these days, is just about everybody). The default color quantization method does not work well in some cases when saving an image with a colored background. The optional method works much better but comes with a performance penalty, taking several seconds for large images (which might be important if automating this process and producing thousands of bitmaps). Modified the SetPluginImageDims macro/DDE command to include this new option.
     
  • In most all dialog boxes that include lists of curves, the list entries now include a short line segment and/or symbol in the appropriate color. This change makes it a bit easier to quickly pick the desired curve from a list, particularly when the curve has no legend entry.
     
  • DPlot does a better job handling calendar date number formats on 3D/4D surface plots. In previous versions these numbers were treated the same internally as all other number formats, so that it usually wasn't possible to get, for example, grid lines or tick marks at exact 1 month or 1 year intervals.
     
  • Expanded the list of built-in date formats in the Number Formats dialog from 7 to 24 of the most commonly used formats. As before, you may select a format from the list or enter your own format.
     
  • Added an option to not draw an inverted scale on the opposite side of the plot from a probability scale. The default is to draw that inverted scale. Added ProbabilityFlags macro/DDE command to set these options.
     
  • Improved on version 2.1.5.5's change in the behavior of the Force circular plots option for polar plots. In version 2.1.5.5 the size was set to roughly 80% of the minimum of the document window width and height. This worked well for most display sizes, but not larger resolutions (unless you used very large fonts). In this version DPlot will use all available display space.
     
  • The "Pick columns to plot" option for CSV and other multi-column text files is now turned on by default, and your choice for that option will be preserved. In previous versions this option was always initially turned off.
     
  • Bug fix: If Outline solid symbols was checked, then symbols from the Wingdings 2 font were drawn in black.

27 February, 2008
Version 2.1.5.9

  • Bug fix: Additional problems (this time with 3D plots and bubble charts) that resulted in draining GDI resources have been fixed. These problems generally were not apparent until several thousand plots were created in the same DPlot session. Thanks again to Sven Henze for the assist in tracking these bugs down.

18 February, 2008
Version 2.1.5.8

  • 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.

17 February, 2008
Version 2.1.5.7

  • You can now specify the background color of the entire plot, the legend, text notations and point labels. Past versions always used the Windows' window background color. Added new BkColor macro/DDE command and modified the LegendParams, TextNoteEx, TextNote3D, TextPointLabel and TextPointLabel3D macro/DDE commands to take this new capability into account.
     
  • Bug fix: Retrieving a DPLOT_PLOTMETRICS structure with DPlot_GetBitmapEx or DPlot_GetPlotMetrics was broken in version 2.1.5.6.
     
  • Bug fix: If you did not install the Excel Add-In, the uninstall program for DPlot might have produced an Excel runtime error and then shut down.
     

10 February, 2008
Version 2.1.5.6

  • 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%\DPlot\Preferences\default.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.
     

27 January, 2008

  • Excel Add-In only: The Add-In has handled time-of-day values poorly from the beginning, chiefly because DPlot expects "Time of Day" numbers to be in hours, while in Excel times are fractional days. Past versions of the Add-In examined the format used for numbers, and if the format included time formatting but no date format, used "Time of Day" format and multiplied the appropriate columns by 24. This worked mostly fine as long as the input values were only times. But if the values included dates (not shown in Excel only because of the selected format option), the displayed times in DPlot were correct, but the underlying data was all fouled up with calendar dates multiplied by 24. This made it all but impossible to add reference lines at the correct location, set the extents to the proper values, etc. In this update to the Add-In, "Time of Day" format will never be selected. Instead, "Date and Time" format is selected and the date formatting string is set to "<none>". The updated Add-In is now included with the version 2.1.5.5 update. If you have already installed version 2.1.5.5 then you can get the Add-In update here.
     

25 January, 2008
Version 2.1.5.5

  • Changed the behavior of the Force circular plots option for polar plots. In previous versions the plot size was simply set to 6x6 inches, if the size had not previously been specified. Six inches on many display monitors is a bit small. In this version if the size has not been specified then it is set to roughly 80% of the minimum of the document window width and height. As in previous versions, this size may be changed with the Extents/Intervals/Size command on the Options menu. If you do change the size using that command DPlot will force the width and height to the smaller of those values.
     
  • Modified the Playback feature to use the specified line widths to draw curves, rather than forcing the line width to a single pixel as was done in all previous versions for performance reasons. Performance has not suddenly improved, though, and for multiple data sets you'll have better luck setting the line widths to 0 (a single pixel) before using Playback.
     
  • Expanded the ColumnsAre macro/DDE command to include support for 3D text files, and the ability to specify which columns to plot.
     
  • Bug fix: When attempting to save a bitmap image (BMP, GIF, PNG, etc.) with a FileSaveAs command, if the document window was not maximized and the DPlot application window was minimized, DPlot crashed. This was due to DPlot being confused about whether it was drawing to a bitmap for the display window or for a saved image. Thanks Sven Henze for the help in isolating this problem.
     
  • Added "Version" as a valid XTYP_REQUEST item. Version number is returned. To use Version in an XTYP_REQUEST from Microsoft Excel, for example, you can type "=DPlot|System!Version" in a blank cell. If using DPLOTLIB.DLL, the DPlot_GetVersion function is preferable as that function distinguishes between the version of DPlot and DPlot Jr that will be started by a call to DPlot_Start or other functions that launch DPlot, and DPlot_GetVersion doesn't require either DPlot or DPlot Jr to be running.
     
  • Added "LastCurveFit" as a valid XTYP_REQUEST item. The curve fit equation last produced by the Polynomial Curve Fit menu command or CurveFit macro/DDE command is returned, formatted identically to the text shown on the Curve Fit Coefficients dialog box.
     
  • Bug fix: The Z3=f(Z1,Z2) command might have resulted in a crash if you had zoomed in on the Z1 surface at the time you ran that command.
     

20 January, 2008
Version 2.1.5.4

  • The ERF function is more accurate for small (< 1.E-7) values. ERF is used internally by the CDF, NORMDISTCDF, and NORMINV functions. Previous versions used a polynomial approximation that gave very accurate answers for x >> 1.E-7, but does not work well for smaller values. This version uses the Maclaurin series erf(x) = 2/sqrt(pi) * (x - x^3/3 + x^5/10 - x^7/42 + x^9/216 + ...) for x < 1. This series converges very quickly for small x and takes about 15 iterations for x near 1.
     
  • The NORMINV function had a similar but different problem for x < 5.E-7. NORMINV(x,0,1) is now very accurate for x > 1.E-14.
     
  • Bug fix: The Check for Updates feature on the Help menu did not work properly for university subscribers in the third year of a 3-year subscription.
     
  • Bug fix: For point labels containing $YMAX, $YMIN, and similar shortcuts, DPlot confused that shortcut with $Y (the value at the referenced point). This generally resulted in the wrong label text, which might have grown longer each time the plot was redrawn for any reason.
     

12 January, 2008
Version 2.1.5.3

  • Continued with version 2.1.5.1's changes to how Wingding symbols are handled. Most (though not all) characters with a hollow interior will now be filled with the window background color.
     
  • Data processing mode now allows a choice of time units. Previous versions were limited to milliseconds.
     
  • Added "Assume input dates are of the form d/m/y" option to the General Options dialog. If unchecked DPlot behaves as in all previous versions: dates from text boxes, the clipboard, or a file are assumed to be in the order m/d/y unless one of the first 2 fields is greater than 1000, if the assumed date field is greater than 12, or if any of the fields is non-numeric, e.g. "Feb". If this option is checked, dates are assumed to be in the order d/m/y unless, again, one of the above conditions is matched.
     
  • For bar charts with amplitude or percentage labels, if "Labels outside bars" is checked then the labels will be drawn with a transparent background. In previous versions the labels were opaque.
     
  • Bug fix: On XY plots with "Grid Lines or Box" set to "Axes Only" and "Arrowheads" turned off, an uninitialized data problem might have caused DPlot to crash when copying a plot to the clipboard.
     
  • Bug fix: With acceleration plots in data processing mode it was not possible to use the right-click menu to change the line style, symbol parameters, or color of the velocity or displacement plots.
     

4 January, 2008
Version 2.1.5.1

  • Amended the way that the new Wingding symbol capability is implemented. For many characters with hollow interiors (primarily round, square, or diamond-shaped glyphs), DPlot will now first draw another solid character with the same shape but using the window background color so that the interiors of these symbols are opaque.
     
  • Changed the ZGrid function in the Excel Add-In such that if the Y rows and X columns are evenly-spaced, the data is passed to DPlot as points on a rectangular grid rather than random 3D points. The latter plot type is generally superior for the same data because the rendering is not so dependent on how the mesh is divided into triangles.
     
  • Bug fix: The Generate Mesh menu command sometimes had serious (as in crashing) problems with very rough/random data.
     
  • Bug fix: Recent change to the DPlot_AddData function allowing a NULL pointer for X was poorly implemented and might have fouled up with all calls for XY plots, with or without a NULL X.
     

1 January, 2008
Version 2.1.5.0

  • Added Mercator Projection scaling for XY plots.
     
  • Added ArcView Shapefile file import plugin.
     
  • Symbols, symbols, and more symbols. Two symbols have been added to the 38 previously available graphic symbols, and you may now use characters from the Wingdings, Wingdings 2, or Wingdings 3 fonts (assuming those fonts are installed).
     
  • If Fill Between Curves is used to fill in the area formed by closing the first curve (in other words, the 2nd curve is set to "None"), then DPlot now checks against Y values lying outside limits set with Amplitude Limits and breaks the fill up into multiple segments if necessary. This is particularly useful for filling in, for example, maps imported with the ArcView Shapefile plugin. (In the example, the boundary of Alaska is one continuous curve.)
     
  • Polar charts may now have a reversed amplitude axis, with the maximum value at the center of the plot. This may be handy for (for example), global maps.
     
  • Added a wireframe option to 3D plots.
     
  • Text notations may now be oriented vertically.
     
  • Vector plots may now be drawn w/o an arrowhead by setting the arrow height to 0. (In previous versions a 0 arrow height forced the default height of 0.15"). Also added an option to center vectors on the data point; the default is to draw vectors with the tail at the point.
     
  • Added $SUMX and $SUMY text shortcuts for XY plots, which will be replaced with the sum of all X/Y coordinates for the given curve when a plot is drawn.
     
  • Added PMT function to the function parser, for use in Y=f(X) and similar commands. This function returns the payment for a loan based on constant payments and a constant interest rate.
     
  • In previous versions for tripartite plots the displacement grid lines and labels were drawn in a single pass, followed by the acceleration grid lines and labels. This resulted in acceleration grid lines overwriting displacement labels (which might not have been noticeable with thin grid lines and/or a small font). In this version grid lines are drawn in both directions, followed by labels for both directions.
     
  • Added "Use settings for current plot" option to the Excel Add-In. If checked and a new plot produced by the Add-In is of the same type as the currently active plot in DPlot (XY, 3D, etc.), then preferences from the active plot (line styles, colors, etc.) will be used in the new plot.
     
  • Bug fix: Recent change of allowing point-click addition of new data points in an empty plot caused a crash due to the extents being uninitialized if a logarithmic scale was used on either the X or Y axis.
     
  • Bug fix: Previous versions under Windows 2000 might have crashed when using the Search feature in the Help file. In this release the Help works identically to Windows 95 and 98, by launching KEYHH to display Help rather than relying on the Windows API. Search now causes no problems, but context-sensitive help within dialog boxes has been disabled. Context-sensitive help remains in place for Windows XP and Vista.
     
  • Bug fix: Corrected a couple of problems with the Reorder Curves feature: In previous versions bubble plot source curves and vector angle and magnitude source curves were omitted from the list. This made it less than obvious where a curve would end up in the order of all curves. DPlot also now correctly transfers all bubble plot and vector plot settings with a curve as you move it up or down in the list.
     
  • Amended the behavior of the DPlot_AddData function. For XY plots if the *array1 argument (the address of an X array) is NULL, then X values will be generated within DPlot, with the value equal to the 0-based index of each point.
     
  • Added SavePreferences macro/DDE command.
     

9 December, 2007
Version 2.1.4.9

  • 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.
     

16 November, 2007
Version 2.1.4.8

  • Bug fix: The "fix" for enhanced metafiles in version 2.1.4.0 contained an uninitiliazed data problem that might have caused DPlot to crash when saving an EMF file.
     

7 November, 2007
Version 2.1.4.7

  • Modified the Find intersections command to better handle calendar dates and other large magnitude values. In previous versions DPlot threw out an intersection if it was determined to be more-or-less equal to a previously-found intersection. A precision problem in that check resulted in false positives for large values on either axis with relatively small differences between intersections on that same axis. For example if the difference on the X axis was a few seconds on a date scale then the new intersection would often be discarded, assuming the difference in Y was also small or zero.
     

5 November, 2007
Version 2.1.4.6

  • Interpretation of file type 'C' (number of points and time step followed by data with one or more values per row) is now more flexible. These files may contain up to 3 header lines; if present those lines will be used for the plot title. The number of points and interval values may be on the same or different lines.
     

27 October, 2007
Version 2.1.4.5

  • Added several options for bubble plots. You may now specify whether solid symbols should be outlined in black or not (in previous versions, they always were). And instead of automatically using the minimum and maximum amplitudes of the bubble source curve, you can 1) enter custom extents that the low and high bubble size and color should be mapped to and 2) specify whether amplitudes outside those limits should be drawn with the limit values or not drawn at all. Amended Bubbles macro/DDE command to take account of these new capabilities.
     
  • One final change related to Campbell Scientific datalogger files. If the column heading for the second column in the file is "RECORD", indicating a 0-based record number (a line count, in other words), that column is ignored by default. If you want to show the record number you can do so by checking the "Pick columns to plot" box. Also tightened up the determination of whether a multiple-column text file is a Campbell Scientific datalogger file: in addition to previous checks, this version checks that the first seven characters in the file are "T0A5",.
     

26 October, 2007
Version 2.1.4.4

  • It is now easier to create an XY plot from scratch using the Edit Data menu command. For a new plot, the graph will be drawn with extents of +1 in both X and Y. Since the graph is now drawn for this case, you can immediately begin adding points with Ctrl+left click on the graph. In previous versions the graph was not drawn for new plots, so the only way to enter new data was by using the text boxes. Added zoom and pan buttons to increase/decrease the graph extents or shift the extents left/right/up/down - so you are now able to enter all points for a new curve using the mouse only.
     
  • Yet one more change related to Campbell Scientific datalogger files: Legend entries are built from the 2nd and 3rd lines, separated by a comma. Previous version used the 2nd line only.
     
  • Changed the behavior of the DPlot_Stop function. In previous versions, DPlot_Stop would shut down DPlot if there were no open documents containing data or if DPlot was hidden. This worked well for single applications interacting with DPlot, since its being hidden was a good indication that it was the calling application that started it up in that state. It did not work well, though, if two or more applications were both interacting with DPlot; one program closing it down prematurely might have interfered with the other program. In this version of DPLOTLIB.DLL, DPlot_Stop will only close DPlot if there are no open documents containing data.
     
  • Bug fix: It was possible to get DPlot confused about which plots were associated with which DDE conversations, particularly when sending data to DPlot at a small time interval (in a real or simulated real-time application, for example.)
     

24 October, 2007
Version 2.1.4.3

  • Two more changes to the interpretation of multiple column text files, again to accommodate Campbell Scientific datalogger files and possibly others: 1) If a non-quoted data entry contains the characters "nan", "NAN", or "NaN", DPlot interprets this as a "not a number" error and the value is considered numeric, but is skipped over. This change will properly handle Campbell files containing the error indicator "-1.#QNAN". In previous versions the error code would have been considered a text label, not a number. In turn this might have caused DPlot to reset its search for the start of the data, depending on whether a valid numeric entry was found in the same column in previous or subsequent lines. 2) For Campbell Scientific datalogger files, the first and second title lines are taken from the second and third quoted strings in the first line of the file.
     
  • For polar plots, point labels will be drawn unless the bounding rectangle for the label is completely outside an imaginary rectangle surrounding the plot. This differs a bit from other scale types, for which the label will not be drawn if the reference point of the label (left side, middle) of the label is outside that box.
     
  • Reference lines may now be added to polar plots.
     
  • Bug fix: Recent change allowing you to split the date and time into 2 separate lines for calendar date formatting was also applied to point labels, but was not handled well. In this version point labels containing a date and time will display those values on the same line.
     
  • Bug fix: DPlot would not register a hit on the same mouse-activated point label twice in a row. That is, once a mouse-activated point label was dismissed by moving the mouse, that same label would not be activated again until and unless another mouse-activated label was activated/dismissed.
     

23 October, 2007
Version 2.1.4.2

  • Changed the interpretation of multiple column text files a bit so that Campbell Scientific datalogger files are handled properly. In particular, DPlot will now handle quoted date/time groups with the date in the form yyyy-mm-dd. In previous versions this group would have been considered a text label, not a date.
     
  • Bug fix: The "Pick Columns to Plot" dialog didn't set tabstops properly in all cases, so columns were not properly aligned with column headings.
     
  • Bug fix: Reference line locations were saved to DPlot files with only 6 significant figures. For most applications this was sufficient; for date/time scales this resulted in unacceptable roundoff errors.
     

18 October, 2007
Version 2.1.4.0

  • Changed DPLOT_PLOTMETRICS structure to use double-precision data, and improved method of transferring that data to DPLOTLIB.DLL (previous versions sent this data as text; this version sends binary data. So there won't be any loss of precision). This change is primarily useful for plots with date and time values on the X axis, or any other number format with large numbers and a relatively small difference between the minimum and maximum values. This change requires DPLOTLIB.DLL version 2.1.0.6 or later and this or a later version of DPlot or DPlot Jr.
     
  • Eliminated problems in enhanced metafiles with text overlapping legend boundaries, improper subscript and superscript placement, and other text sizing problems. Enhanced metafiles should also be drawn with the correct dimensions in all Office products (assuming the picture will fit within the margins.) Enhanced metafiles produced by previous versions of DPlot were typically much larger in size than the DPlot-specified dimensions, particularly in Excel and PowerPoint.
     

2 October, 2007
Version 2.1.3.8

  • The GetPreferences macro/DDE command now supports a replaceable |DOCNAME| parameter. If found, |DOCNAME| will be replaced with the document title, minus any file extension if present.
     
  • Added "Automatically read preference file based on filename" checkbox to Options>General. If checked, then when opening a data file for a new document, DPlot will check for a preferences file with the same filename and extension of ".set", first in the folder where the data file resides, then in the default preferences folder. If found, that preferences file will be processed. This might be a handy option if you have data files which frequently change, but you don't want to go through the same formatting steps each time you open that file.
     
  • Bug fix: Several years ago DPlot was brought into line with Microsoft's recommendations for file locations. This was important on XP with limited privileges, and critical on Vista. To accommodate users of older DPlot versions, at startup DPlot copies many files from the DPlot installation folder to %APPDATA%\DPlot (c:\Documents and Settings\<username>\Application Data\DPlot on Windows 2000 and XP, c:\Users\<username>\AppData\Roaming\DPlot on Windows Vista). However, the "if it ain't broke, don't fix it" rule was ignored: if DPlot was installed to %APPDATA%\DPlot, then "old" files were deleted. This effected all versions of DPlot, but resulted in a critical problem for the licensed version: license information stored in dplot.ini was deleted at startup, so that licensed users would be prompted for their registration number every time they ran the program.
     

29 September, 2007
Version 2.1.3.7

  • Bug fix: DPlot Jr only. At startup DPlot Jr displayed the error message "One or more components of DPlot Jr are missing. Please reinstall.", then quit. The error was due to an otherwise harmless change in the Help file.
     

28 September, 2007
Version 2.1.3.6

  • Added printable User Manual (PDF format).
     
  • Constants specified on the Y=f(X), X=f(T), Y=g(T), Y=f(X,Y1,Y2,...), and Z=f(X,Y) commands may now be used in equations within the text boxes for the from, to, and interval entries. In previous versions constants were only recognized in the text boxes for the main equation(s).
     
  • Added Set X:Y=1:1 button on the Extents/Intervals/Size dialog for linear X, linear Y plots. This button is disabled unless both Specify Extents and Specify Size are checked. When pushed, the size of the plot is adjusted such that the physical scale of the X and Y values are equal: 1 unit in X will be the same length as 1 unit in Y. This action is not persistent: if you subsequently edit either the extents or the size then this relationship will no longer be true until you push the button again.
     
  • Added an option to set the maximum number of points per curve for which antialiasing will be performed on XY plots. This might be useful for users who occasionally plot large data sets (for which antialiasing isn't appropriate) but who like the antialiasing option for smaller data sets. The default value of 5000 points generally works well.
     
  • Added "Snap mouse" checkbox to the Edit Mode dialog for XY plots. If checked, the coordinates of the point selected with the mouse will be rounded to "nicer" values: one tenth the tick mark interval on linear scales, for example.
     
  • For tripartite plots, the status bar and tooltip-like popup windows now show the values on the 45° and 135° axes as well as X and Y.
     
  • For Degrees, Minutes and Degrees, Minutes, Seconds number formats, if the "Fixed number" of decimal places is checked and the number of decimal places is 1, then 0 values for minutes (and seconds for D,M,S number format) are always shown. If the number of decimal places is 2 or greater, then the minutes and seconds values will be padded with a leading 0 for values between 0 and 9, inclusive. In previous versions 0's were not displayed.
     
  • For Time of Day and Elapsed Time number formats on the X axis, DPlot now does a better job of picking a default tick mark interval. In previous versions intervals like 2.5 hours were common. In this release if the extents are greater than 15 minutes and less than 2 days, the default interval will be one of 5, 10, 15, or 30 minutes, or 1 or 2 hours.
     
  • Added an option to split the date and time used with the Calendar or Date and Time number formats into two lines, with the time displayed below the date. Added corresponding SplitDateTime macro/DDE command. This feature currently works well only on linear scales.
     
  • A couple of changes were made to better handle Time of Day number format for the X extents on the Extents/Intervals/Size dialog. On entry, if the difference in extents is 24 hours or greater then the times are presented using the default number format rather than time formatting. If the extents are less than 24 hours and on exit the upper extent is less than or equal to the lower extent, 24 hours is added to the upper extent. (So, for example, 12:00PM to 8:00AM will be interpreted as noon through 8AM the next morning.)
     
  • Contour Options dialog checks to see if any changes have been made when clicking OK, and does not redraw the plot unless the answer is affirmative. This will save a bit of time with very large (millions of points) data sets.
     
  • Distance from command on the View menu automatically turns on the crosshair cursor, and when done turns it off if it was not previously on.
     
  • You can now add/edit point labels for 3D surface plots using the Edit Mode feature, as you've always been able to do with XY plots.
     
  • Improved antialiasing for line segments less than 2 pixels long for line widths of 2-5 pixels. Previous version produced stray pixels in this circumstance. Antialiasing still doesn't work especially well with very short line segments, but this version is a definite improvement.
     
  • Bug fix: In dialog boxes allowing dates, times, and equations in text boxes for numeric entries, DPlot only recognized entries as times if the text contained a colon, e.g. 12:00AM. "12AM" was erroneously interpreted as an equation, which DPlot would balk at with a confusing error message concerning a lack of an operator.
     
  • Bug fix: For vector plots, the angles and magnitudes Y values were considered when finding default plot extents ("Specify extents" not used). This version properly ignores those data sets when finding default extents.
     
  • Bug fix: In the "Specify Columns to Plot" dialogs there was a problem with column alignment when adjacent date and time columns were combined into a single date and time value.
     
  • Bug fix: Contour intervals were saved to DPlot files with only 4 significant figures. So if your surface plot had Z values ranging from, for example, 99.999 to 100, both the low and high value would be written as 100. Upon rereading the file DPlot would then force the intervals to 99 and 101.
     
  • Bug fix: Corrected a previously untrapped divide by zero error when calculating standard error in List Peaks and List Peaks in Box. Thank you, Jon Canale.
     
  • Bug fix: A roundoff error with Fractions number format in isolated cases caused whole numbers to be off by 1, e.g. 3.0 might have been displayed as 4.
     
  • Added Repaint DDE command. This command is only useful in applications that force DPlot to draw output to a window owned by the application, using SetOutputWindow.
     
  • Added C, C#, VB, and VB.NET demo programs to the DPlot Jr distribution illustrating the SetOutputWindow command. This command directs DPlot to render a graph to some window other than the normal DPlot document window, without requiring the calling application to keep track of and/or render bitmaps or metafiles produced by DPlot.
     
  • If DPlot is already running when another application calls DPlot_Start with a non-zero Hide argument, DPlot (or DPlot Jr) will now be hidden if there are no open documents. In previous versions DPlot would remain visible under the same circumstances.
     

14 August, 2007
Version 2.1.3.2

  • Improved antialiasing of lines, introduced in version 2.1.3.1. Antialiased line segments will have a smoother appearance in this version. Also fixed a problem with joins for segments with dx>dy in one segment, dy>dx in the other. Finally, grid line type for tripartite plots was ignored in the previous version; if antialiasing was used then grid lines were solid.
     
  • Bug fix: If antialiased symbols were used, the line weight used for the symbols was not changed when editing the line width for the curve; only when changing symbols or symbol heights.
     
  • Bug fix: Curve selection list boxes were broken for plots that did not use a legend, but did use curve labels (label drawn adjacent to the end of each curve).
     
  • Bug fix: CTEST2 demo program distributed with DPlot Jr was a bit fouled up due to testing code not removed before distribution. The command launching DPlot in a hidden state was commented out, so that any interaction with DPlot would cause it to become visible and topmost.
     

12 August, 2007
Version 2.1.3.1

  • 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 "<none>" 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.
     

19 July, 2007
Version 2.1.2.8

  • 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 power 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.
     

7 July, 2007
Version 2.1.2.6

  • The "fix" in version 2.1.2.5 to get around the "The system DLL user32.dll was relocated in memory..." error message caused more problems than it solved, and was removed. If you are running Windows XP SP2 and get this error message when starting DPlot, when trying to run or edit a macro, or if you get no error message when attempting to run a macro but the macro doesn't run, you can read more about the problem and the solution in our user forums here.
     

6 July, 2007
Version 2.1.2.5

  • Horizontal bar charts. Right-click on a bar chart and select Bar Chart Options, or select the Bar Chart Options command under Linear/Log Scaling on the Options menu.
     
  • Added a workaround to eliminate the "The system DLL user32.dll was relocated in memory..." error message associated with a faulty Windows XP update. Although Microsoft later published a "hotfix" for this problem, the fix was never made a part of MS's automatic updates unless the user's system had one of the handful of known (by Microsoft) applications that exhibited this problem. The actual list of programs with this problem was several orders of magnitude larger than what MS apparently ever realized.
     
  • Changed how minor tick mark lengths are handled on log scales. In previous versions, the minor tick length was only used for non-integers times some power of 10, e.g. 11, 12, 13, etc. between 10 and 20. Those tick marks were only drawn if "Minor grid/tick divisions" on the Extents/Intervals/Size dialog was set greater than 1. In this version, if "Minor grid/tick divisions" is 1 then the minor tick mark length is used for all tick marks other than 1 times a power of 10 (2,3,4, etc.)
     
  • Invert X and Invert Y options on Extents/Intervals/Size dialog are now enabled for bar charts, as is the InvertAxis macro/DDE command.
     
  • Added Make Triangular Mesh command to Options menu for 3D surface plots of points on a rectangular grid. This command might be useful if the rectangular grid is not fully populated and/or you want to add, move, or delete specific points. (A rectangular grid with missing edge values will have stair-stepped edges, while the equivalent triangular mesh will always be convex.)
     
  • Changed dotted line pattern such that the pattern starts with a solid dot (actually more of a dash) instead of whitespace. This will be mostly noticeable in a legend which uses a variety of line styles: all line segments will appear to be left-aligned.
     
  • Added a filename parameter to the FilePrint macro/DDE command. If specified and the output is to a file (rather than an actual printer) then this filename will be used for the output. If omitted, then the document title is used to create the filename as in previous versions. This might be a handy option when saving one or more unnamed graphs to PDF files using one of the virtual PDF printer drivers, for example.
     
  • Modified curve selection list boxes and popup tooltips for XY plots to show the curve index as well as the legend. This might be helpful when working with graphs containing many curves with similar legend entries.
     
  • Time values using Time of Day or Date and Time number formats can now be displayed in any time increment down to the nearest microsecond (e.g. h:mm:ss.000000). Previous versions were limited to hundredths of seconds and additional 0's were simply displayed as 0's.
     
  • For XY plots, when saving CSV or tab-separated text files, if either of the calendar date or time number formats are used for the X axis then the appropriate date and/or time is written to the file for X rather than the corresponding Excel serial number (date, date and time) or decimal time. For calendar dates, time values will be written if any X value is not a whole number. For all times, DPlot examines the first several points to determine whether fractional seconds (as small as microseconds) should be stored. Dates will be written using the format code M/d/yyyy; times will use H:mm:ss with 0 to 6 decimal places for seconds.
     
  • Reference lines in 1D plots now have the same capabilities as those for XY plots. (Limit of 50; previously limited to 2. Label can go in the legend or be centered on the line.)
     
  • Added Reorder groups command to the View menu for 1D plots. This is equivalent to the Reorder curves command for XY plots.
     
  • Added Legend command to the Text menu for 1D plots, allowing you to specify the location and various attributes of the legend.
     
  • Alignment code in LegendParams command now works correctly with 1D as well as XY plots.
     
  • Bug fix: An uninitialized data problem might have caused the List Peaks in Box function to crash under some circumstances.
     
  • Bug fix: X,Y Labels were sometimes clipped when copying a plot to the clipboard.
     
  • Bug fix: The Operate on X and Operate on Y commands on the Edit menu resulted in the transformation also being applied to constant X and Y reference lines, respectively, when the transformation was not applied to all curves. In this release the operation is used on reference lines only when all curves are operated on.
     
  • Bug fix: Uninstalling DPlot now correctly removes the Excel Add-In from Excel's Add-in collection.
     
  • Bug fix: Subtract Mean command on the Edit menu might have entered an endless loop. After a single pass, on paper the new mean value should be 0. For large data sets that is rarely the case, though. So DPlot looped through the operation until the new mean value was smaller than some arbitrary small number... which unfortunately was too small in some cases. This version will exit the loop after several passes, regardless of whether the updated mean is "small enough"
     
  • Bug fix: Text shortcuts used in equations that resulted in two consecutive minus signs (e.g. Y-$MEAN where $MEAN is negative) caused a crash in the function parser.
     
  • Bug fix: Z-table file import plugin did not properly handle trailing spaces.
     
  • Bug fix: Starting with version 2.0.7.1 DPlot calculates a root mean square (RMS) value for each curve in an XY plot. If the number of points in a curve was 0, this calculation resulted in a divide by 0 error and a crash. This error should only effect programmers using XY or XYXY commands; the only way to create a curve with 0 points is by using a SelectCurve command followed by XY or XYXY in which the selected curve index was greater than the current number of curves plus 1.
     
  • Bug fix: Under some circumstances, graphs created with a series of XY or XYXY commands that were subsequently saved as DPlot files would erroneously be marked as having a constant spacing in X.
     
  • Bug fix: With 2D contour plots of points on a rectangular grid, if you used a custom contour palette with only one color then DPlot erroneously applied the "cycling levels" logic and, in some cases, did not draw any contour lines. In this version the contour levels are assumed to cycle only if more than one color is used, which was the original intent of that feature.
     
  • Bug fix: Recent addition of custom contour intervals might have caused DPlot to crash after performing any operation that might have modified the Z extents (Edit>Operate on Z, for example).
     
  • Bug fix: Variables used in equations in text placeholders, e.g. "$=(100*$YMAX)" did not work properly if thousands separators were used or if the decimal separator was anything other than ".". In this release, if a label includes an equation ($=), then all variables in that label will use the default number format with no thousands separator and the normal English decimal point.
     
  • Bug fix: Edit Data command might have resulted in overwriting data for the 2nd or subsequent curves if you added points such that the current maximum number of points was exceeded.
     
  • Bug fix: Starting with version 2.1.1.5 DPlot crops most white space from bitmap images by default. This change was intended only for images saved to disk, but was unfortunately extended to images retrieved via DPLOTLIB.DLL, with no way to turn that feature off. This caused those images to no longer be placed as expected and also broke the ability to translate mouse position to data space. In this version image cropping for images retrieved by DDE functions is turned off by default, and can be turned on with [SetImageCrop(1)].
     

16 May, 2007
Version 2.1.1.9

  • When interpreting command strings, either via macros or calls to DPLOTLIB functions, DPlot is now more forgiving of extra spaces in commands, and also gives more meaningful error messages for unmatched parentheses and/or brackets.
     
  • Added NORMDISTCDF (cumulative distribution function, equivalent to the integral of the NORMDIST function from negative infinity to x) and NORMINV (inverse of NORMDISTCDF) functions.
     
  • Added support for embedded equations and other text shortcuts to point labels.
     
  • Reworked how rectangles are drawn in standard and enhanced metafiles. There will be fewer roundoff problems resulting in, for example, grid lines or tick marks being drawn just outside the plot extents. And with enhanced metafiles all rectangles will now have sharp, square corners.
     
  • Reference lines are saved to preference files.
     
  • Bug fix: The Swap X,Y command on the Edit menu did not swap the X,Y coordinates of point labels. This might have resulted in a crash if either (but not both) of the X or Y axes used a probability scale.
     

26 April, 2007
Version 2.1.1.8

  • 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.
     

6 April, 2007
Version 2.1.1.6

  • 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.
     

3 April, 2007
Version 2.1.1.5

  • 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.
     

20 February, 2007
Version 2.1.0.5

  • 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.
     
  • For XY plots added right-click menu entries for symbol size and line width.
     
  • Added "X values consisting of times are always sequential" option to the General Options dialog. This setting affects time values read from text files or the clipboard and is on by default. If unchecked, then times are considered to be in random order and will be assigned values between 0 (midnight) and 24 (this is the behavior in all previous versions). If checked, time values are considered to be in chronological order and will have 24 hours added every time the value passes through midnight. Made a similar change to the Excel Add-In Options dialog.
     
  • 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.
     
  • Bug fix: Last version's change to the fraction number format introduced a couple of bugs related to negative fractions.
     

15 February, 2007
Version 2.1.0.4

  • Added Fractions, no reduction number format. This is identical to Fractions with the exception that the fraction will not be reduced to its simplest form. For example if the tick mark interval is 1/32 and a tick mark is at 6/32, Fractions would display the value as 3/16, while Fractions, no reduction will display the value as 6/32. Another change related to both fraction number formats is that the denominator is no longer limited to powers of 2. The denominator from the list 2,3,4,5,6,8,10,12,15,16,20,24,25,30,32,40,50,60,64 that gives the smallest error will be used. Also rearranged the number format list into functional groups, as the list was growing into an unmanageable mess.
     
  • XY plot feature of panning a zoomed plot with the keyboard arrow keys or clicking and dragging the mouse now also works with 2D views of 3D or 4D surface plots.
     
  • For 3D views of surface plots for points on a rectangular grid, this version allows you to set the X or Y extents to values outside the extents of the data.
     
  • Added "Overwrite existing surface" checkbox to the Z=f(X,Y) dialog box. If checked, the existing surface is replaced with the new function. If unchecked, a new document is created (as in all previous versions). This might be a handy option when doing parameter studies and you have a graph formatted exactly as you like; all format settings will be preserved.
     

11 February, 2007
Version 2.1.0.3

  • Added /d command line switch to set the default folder for opening and saving files. This is primarily useful for running macros from the command line when you don't want to manually edit the macro to include a default folder. See How do I specify options on the DPlot command line? in the online manual.
     
  • Added control for color of planes used for the "Draw Sides" option of 3D/4D surface plots. Edges of planes will be drawn using the border color. Previous versions always used black-edged white planes. Plane color will also use light settings (Phong, Gouraud).
     
  • Added controls to specify the line weights used for the coordinate axes in 3D/4D surface and scatter plots.
     
  • Added buttons to both "Label Points" dialog boxes to copy current label attributes to all labels. This is handy if you have hundreds of labels.
     
  • If you select millimeters as the default units on the General Options dialog, then millimeters will now be used as the default in all cases. Previous versions used centimeters in this case for large measurements (plot size, for example).
     
  • "Prompt to save changed plots" is ignored if DPlot is hidden.
     
  • Added DPlot_GetPlotMetrics command to DPLOTLIB.DLL.
     
  • Added SetOutputWindow DDE command. When sending instructions to DPlot from another program, this command tells DPlot to render a graph to a window you specify, rather than the normal document window. This is useful primarily for real time applications.
     
  • All functions in the Excel AddIn now preserve the current working directory before changing the directory to the AddIn folder (necessary to allow Excel to find dplotlib.dll) and restore the previous working directory before exiting.
     
  • Bug fix: Text shortcuts (e.g. $MEAN) in equations were broken because of a few changes made to accommodate the new SUM function.
     
  • Bug fix: Linear scaling routine was amended in version 2.1.0.2 in an effort to prevent 0 values from overlapping each other when "Axes at 0" was used. However, the steps taken should only have been taken when "Axes only" was used for the axis type. The result was that 0 values would never be drawn if "Axes at 0" was checked.
     
  • Bug fix: Recent change adding support for HTML format on the Clipboard did not work properly when the clipboard contained both unsupported HTML (no table) and text format. In this case DPlot would erroneously report "No text is available from clipboard."
     

3 February, 2007
Version 2.1.0.2

  • 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.
     

January 16, 2007
Version 2.1.0.1

  • Bug fix: The Scan X,Y command might have erroneously reported "The curve is not visible! Zoom out to scan." for curves that did not have monotonically increasing or decreasing X values.
     
  • Bug fix: X,Y Labels anchored to values outside the extents of the graph might still have been drawn.
     
  • Bug fix: In preparation for allowing more than 2 Y axes in the next release, the Multiple Y axes feature with Y2=f(Y1) was unfortunately broken.
     
  • Bug fix: New feature in version 2.1 of allowing up to 200 characters in the title lines and axis labels and a 4th title line was implemented only for XY plots. In this update the new capabilities work for all plot types.
     

January 12, 2007
Version 2.1.0.0

  • Added the ability to specify unequal contour intervals for all 3D and 4D plots, which might be useful if there is a large range between the minimum and maximum amplitudes. Added corresponding ContourCustomLevels macro/DDE command.
     
  • Added bar chart options to 1) omit the black border on filled bars, 2) draw borders around the extremes only (rather than each entire bar) and 3) draw solid bars with pseudo-3D shading. For examples see the new Bar Chart page.
     
  • Title lines and axis labels are now limited to 200 characters each. Previous limit was 80 characters. Also added a fourth title line. For DPLOTLIB.DLL users and plugin authors, this change requires the new version 4 of the DPLOT structure, defined in the respective header files for the DPLOTLIB projects and in the Help file for plugins. Old programs will continue to work with version 2 or 3 of the DPLOT structure. If you want to use these new capabilities, all that is needed is to recompile your application including the new header file for your development environment. Note that if you do use the new structure, the end user must have version 2.1 or later of DPlot or DPlot Jr.
     
  • Added "X,Y,Z Labels" command to the Text menu for all 3D/4D plots. This command has the same functionality as the "X,Y Labels" command for XY plots.
     
  • Added right-click and double-click editing features for "X,Y Labels"
     
  • DPlot will now check for and prefer HTML clipboard format for tables over plain text format. The principal difference with this change is that column headings are more likely to be interpreted correctly, particularly when copying data from tables on a web page or from a HTML Help file. In previous versions, plain text tables with column headings that included spaces or commas would not be handled correctly unless the columns were separated by tabs or delineated by "quotation marks". If the source application exports HTML format to the clipboard, this is no longer an issue since each column heading is in a separate table cell. Applications that export HTML format include Microsoft Word, Microsoft Excel, HTML Help (.CHM) files, and the most popular browsers. (Thanks to the good folks at the Help & Manual forums for their assistance with this. If you write your own Help files, you should give Help & Manual serious consideration. Their support is not beatable.)
     
  • Ported old WinHelp Help file to HtmlHelp format (CHM), in preparation for Windows Vista. (Vista throws out support for WinHelp.) Again, Help & Manual to the rescue, making the translation of a going-on-20-years-old Help file to a new format relatively painless. An online Help manual has also been created with Help & Manual. The new DPlot installation program does not delete the old help files (DPLOT.HLP and CONTEXT.HLP) in case... you know... you want to cherish them for a while longer :-). Those 2 files may be safely deleted and are also removed automatically if you uninstall an old version. Help files for all plugin modules and the Excel Add-In have also been converted to HtmlHelp format.
     
  • Added Scatter Plot command to Options menu, to hopefully once and for all eliminate "How do I make a scatter plot?" e-mails :-)
     
  • DPlot now correctly interprets commas as thousand's separators in text files and text (and new for this version, HTML) on the clipboard.
     
  • On XY plots if the primary Y axis crosses Y=0 and Specify extents is not used, then the extents of an independent second Y axis will be adjusted such that the 0's line up.
     
  • Error bars at or near the edge of a plot are no longer clipped in the direction perpendicular to the error amplitude. In other words vertical error bars will not be clipped at the left or right edges of the plot; horizontal error bars will not be clipped at the top or bottom sides.
     
  • For output to all devices or image types other than standard metafiles, error bars now have a cleaner appearance with squared-off end caps.
     
  • Added Moving Average plugin command to the Generate menu for XY plots.
     
  • Added Backbone Curve plugin command to the Generate menu for XY plots. This function creates a new curve consisting of the points with maximum Y value within a user-specified interval in X.
     
  • If the number format for the X axis is "None", DPlot will now check to see if any "X,Y Labels" are on the lower X axis and have a 0 offset. If so, then the font height is taken into account when placing the title of the X axis. In previous versions the X axis title most likely would have overlapped those labels.
     
  • Excel Add-In installation is now handled entirely within the setup program, so there will be no more scary warnings from Excel concerning the security risks of running a macro embedded in a worksheet.
     
  • For Y=f(X) and similar commands, memory reallocation is handled more gracefully. In previous versions if the current maximum number of curves for a document was a large number and you attempted to generate a curve with a large number of points, DPlot attempted to keep that same maximum number of curves with the new max. number of points/curve. This often resulted in a confusing error message concerning insufficient memory. In this version the maximum number of curves is decreased to what is actually needed (current number of curves plus one).
     
  • DPlot has always hogged the cursor during zoom and other mouse-related operations. If you switched tasks in mid-operation the cursor was still clipped to a bounding rectangle defined by DPlot (in Windows XP), and switching back to DPlot usually resulted in the screen not being repainted, with the system waiting for you to complete a mouse operation. In this version DPlot is better-behaved and aborts the current mouse operation if you switch tasks.
     
  • Amended the NumberFormat macro/DDE command to include optional arguments for setting the number of decimal places to display, whether to use a thousands's separator or not, and control the label orientation.
     
  • Maximum number of reference lines (Options>Reference lines) has been increased from 20 to 50. Added an option to the Reference lines menu command to draw labels centered on the reference line rather than in the legend. Modified RefLine macro/DDE command to take this new feature into account.
     
  • You may now abort a running macro by pressing the <Escape> key.
     
  • On XY plots with one of the calendar date number formats on the X axis, DPlot does a better job of honoring user-specified extents. In previous versions there were several situations in which DPlot would force the extents to be multiples of the tick mark interval.
     
  • Bug fix: Saved bitmap images (BMP, GIF, JPG, PNG, TIF) with a specified height and width of 0 (indicating that the displayed graph dimensions should be used) included an excess amount of white space at the top of the image if the graph did not include any title lines.
     
  • Bug fix: Saved bitmap images (BMP, GIF, JPG, PNG, TIF) and bitmap images copied to the clipboard were incorrectly clipped if the specified size was greater than the maximum display dimensions.
     
  • Bug fix: Insert new data points at intersections feature of the Find Intersections command in some circumstances did not resize the data arrays properly when needed, with the result that the intersection point(s) might overwrite data points in some other curve.
     
  • Bug fix: Undo feature did not work properly with point labels when deleting or reordering curves.
     
  • Bug fix: Histogram command's "Filled bars" option did not work. This was a side effect of the recent edition allowing fill patterns in bar charts (as opposed to either hollow or solid only).
     
  • Bug fix: Histogram command crashed if you specified a bin size greater than the range in amplitudes in the input (meaning only 1 bar would be produced).
     
  • Bug fix: Zoom information saved to a DPlot file was handled improperly when reading that same file if the graph included multiple Y axes. This might have resulted in DPlot hanging up in an endless loop.
     
  • Bug fix: Last point in a bubble plot was not drawn. Also, under some circumstances DPlot ignored bubble plot parameters when reading a saved bubble plot.
     
  • Bug fix: For 4D data, the "Always auto-adjust scale factors on 3D plots" feature used the 4th dimension's extents rather than the Z dimension extents when determining the Z scale factor. This might have resulted in an exceptionally skinny, tall plot or an almost flat plot.
     
  • Bug fix: A couple of problems with saving 4D data to a DPlot file might have resulted in a crash.
     

December 2, 2006
Version 2.0.7.6

  • Added Bubble plots (XY plot with a third dimension mapped to symbol size and/or symbol color). Added corresponding Bubbles macro/DDE command.
     
  • Added Operate on X and Operate on Y commands to the Edit menu for 3D and 4D surface and scatter plots.
     
  • Improved the Define Boundary command for 3D surfaces. In previous versions small roundoff problems might have caused triangles inside the border to be deleted, and/or triangles outside the border to be retained.
     
  • For triangle plots, numbers along the X and Z axis are now rotated to make it more clear which grid lines are referenced by a particular axis. Added "Clockwise" option (by default the numbers along each axis increase in a counterclockwise direction around the plot.)
     
  • Saving a graph as a DPlot file now results in that filename being added to the MRU (most recently used) list. Previously only opened files were added to the list.
     
  • Bug fix: DPlot ignored the "Scatter plot" setting on the Open dialog for 4D data, always producing a surface plot.
     
  • Bug fix: Saving a 4D surface or scatter plot to a CSV file did not work properly, and in some cases might have crashed.
     
  • Bug fix: Menues for new 4D plots did not work properly with DPlot Jr or DPlot Viewer.
     

November 26, 2006
Version 2.0.7.5

  • Added support for 4D surface and scatter plots. These are similar to the 3D counterparts, but a 4th dimension is used to determine the color of the surface/data point.
     
  • Physical dimensions for line widths, symbol size, plot width and height and others now allows unit specifications rather than requiring inches. Choose between in or " for inches, pt (points), mm, and cm. Default units displayed in these text boxes is controlled with a new setting on the General Options dialog. (This change has no effect on macro/DDE commands; dimensions used in those commands will continue to be inches or thousandths of inches.)
     
  • The multiple print feature now allows you to specify border lines between each document.
     
  • (Licensed version) Tektronix file import plugin now includes support for older Tektronix oscilloscopes (500,600,700 series).
     
  • X=f(T), Y=g(T) command did not previously automatically set the legend for the curve produced by that command.
     
  • Amended the behavior of the "Prevent divide by 0" option for Y=f(X) and similar commands to include checking against invalid arguments, e.g. log(0). If such an error is encountered then the independent variable is incremented by a very small value and the function is evaluated again.
     
  • Amended the EditDecimate macro/DDE command such that the start and stop X values are optional. If omitted, the corresponding minimum or maximum X values for the curve are used. In other words if both the start and stop values are omitted then the entire curve is operated on.
     
  • Bug fix: Average Points and Skip Points commands were broken in the last several versions if "Apply to ALL points" was not checked.
     
  • Bug fix: The Undo feature did not work correctly for Generate plugins that replaced existing data (as opposed to creating new curves).
     
  • Bug fix: DPlot might have crashed when using Info>Interpolate on a large number (> 60 or so) of curves.
     
  • Bug fix: When using the "Pick columns to plot" feature with "Alternating X,Y columns" checked, DPlot would sometimes insert an undefined point (generally 0,0) at the start of the 2nd and all subsequent curves.
     

October 3, 2006
Version 2.0.7.4

  • In previous versions, DPlot hogged the processor unnecessarily during mouse operations: dragging a rectangle, zooming, etc.
     
  • Added Set Limits to Min/Max in Box command to the Options menu for 3D data. This command allows you to drag the cursor across the plot to define a box; the minimum and maximum Z values within that box will then be used as the lower and upper contour intervals. Disabled in 3D views.
     
  • Bug fix: DPlot crashed if you attempted to create a 3D scatter plot containing only 1 data point.
     
  • Bug fix: If the numbers along the X axis decreased from left to right on a linear scale, the Multiple axes function with a second X axis some linear function of the first did not work properly. Generally the first label was drawn but no others were.
     
  • Bug fix: If the columns in a CSV file included a trailing comma or tab, DPlot would crash when attempting to read this file unless you checked "Pick columns to plot" and deselected the last (in this case non-existant) column. This bug was an unfortunate side effect of the fairly recent change allowing blank entries in columns.
     

September 24, 2006
Version 2.0.7.1

  • Amended DPLOT_PLOTMETRICS structure to additionally return the extents of a 2nd Y axis, if one is used. This structure is used in calls to DPlot_GetBitmapEx. Also documented previously available (but not especially well-documented) structure members that can be used to translate 3D coordinates to pixel values for 3D views.
     
  • Amended plugin interface for File Import and Generate plugins to allow a command string (consisting of commands using the same syntax as DPLOTLIB's DPlot_Command function). This new feature is used in the new Mohr's Circle plugin to force the plot size and extents such that circles are circular.
     
  • Added $RMS text shortcut. This shortcut is replaced with the Root-Mean-Square of the amplitudes for a curve or surface. The RMS of a curve/surface is the square root of (sum of the squares of the amplitudes divided by the number of data points).
     
  • For bar charts, added Base of bars at minimum Y extent option. If checked, the base of all (unstacked) bars will be set to the lower edge of the graph. If unchecked, the base of all bars will be at Y=0 (as in all previous versions).
     
  • Added Elapsed time (h:mm:ss) number format.
     
  • Modified Time of day number format to include .0 and .00 descriptors for tenths and hundredths of seconds, respectively.
     
  • Several changes have been made to reading multiple-column text files:
    • Added "Process entire file" checkbox to the Open dialog. If checked, comment lines may be included in the file after the start of the data and will be ignored. In previous versions, after the start of the data any line that did not contain the same number of data columns was considered the end of the data, and DPlot stopped processing the file at that point.
       
    • Previous versions might have stopped reading the file if a blank line was encountered in the file header.
       
    • Date and time pairs were only combined if separated by a space and the date was in the first column. In this version a date is also combined with a following time if the two columns are separated by a comma or tab, and the date may be in any column.
       
  • Find intersections menu command was previously limited to finding 10 intersections between curves. The limit has been increased to 100 in this version.
     
  • Subtract surfaces menu command for 3D surface plots has been changed to the more general Z3=f(Z1,Z2). You may now add, multiply or divide surfaces in addition to subtracting them.
     
  • Lighting parameters for 3D surface plots are now saved to preference files.
     
  • Bug fix: Copying a graph to the clipboard or saving a graph to a bitmap format might have resulted in a crash under some circumstances if the graph contained multiple point labels and several documents were open.
     
  • Bug fix: Under some circumstances the text controls for the graph extents on the Extents/Intervals/Size dialog were interpreted incorrectly, particularly when dates or date/time groups were used on any axis.
     
  • Bug fix: The X=f(T), Y=g(T) had an old, arbitrary limit of 16384 generated points still in place and presented an annoying MessageBox if you attempted to generated more points than that.
     
  • Bug fix: Amplitude labels for bar charts used the number format for the Y axis, but not the proper routine for drawing that text. If your Y axis used fractions, for example, you might see a label that looked like {\u3}/{\d4} (for 3/4).
     
  • Bug fix: The relatively recent change allowing insertion of data points in XY plots with the mouse using Edit>Edit Data did not work especially well. In most cases two new points were added for every mouse click.
     
  • Bug fix: Generate plugins that produced a new document failed with no error message if the document that was operated on did not have a sufficient maximum number of curves or points per curve.
     
  • Bug fix: Manual extents saved to the default preferences file (default.set) for a 3D surface plot might have caused DPlot to crash when subsequently reading a 3D text file because of an uninitialized data problem.
     
  • Bug fix: Title lines and axis labels from preference files were wiped out when reading 3D data from a text file, whether or not the file contained header lines.
     
  • Bug fix: FFT might have crashed for a small, odd number of input data points if "Run FFT as is" was checked.
     

August 5, 2006
Version 2.0.6.7

  • Bar charts can use the same fill patterns as the "Fill Between Curves" feature. Previous versions were limited to either hollow or solid bars. Added corresponding FillStyle macro/DDE command.
     
  • Bug fix: For text notes with locations specified in data space, the Notes dialog did not display the coordinates of the note if Time number format was used, due to an uninitialized data problem.
     
  • Bug fix: There were a couple of problems with point labels that might have resulted in those labels being tossed out after saving and reopening a DPlot file.
     
  • Bug fix: Version 2.0.6.2's new features to read text files faster contained several bugs that in many cases made this routine slower than before. This change will primarily be of interest to users reading files containing several hundred thousand or more points.
     

July 28, 2006
Version 2.0.6.2

  • Date format list on the Number Formats dialog now includes "<none>". If selected, the date will not be displayed. This might be useful for Date and Time format when you only want to show the time of day.
     
  • Previous versions always forced the extents of XY plots to be multiples of the tick mark interval, regardless of whether you had set the extents with the Extents/Intervals/Size command. In this version, on an unzoomed plot DPlot will honor the specified lower limit. The upper limit will always be the lower limit plus some multiple of the tick mark interval.
     
  • Most dialog boxes that include a list of curves now allow you to select/deselect a curve by clicking on the graph (in addition, of course, to selecting the curve within the list box).
     
  • Added $AREA text shortcut (XY plots only). This shortcut is replaced by the area under a curve (calculated with the trapezoidal rule), measured from Y=0.
     
  • Print caption menu command was arbitrarily omitted from the Text menues of 1D and 3D plots.
     
  • For XY plots, a curve's visibility state (hidden or not, set with View>Hide curves or the legend right-click menu) is saved to a DPlot file. In previous versions all curves were initially made visible when reading a DPlot file.
     
  • Erasing a curve now results in color assignments being shifted as expected.
     
  • DPlot does a better job of allocating memory for multiple-column text files. In previous versions DPlot might have made multiple passes through the file, creeping up on the required number of points and in many cases overshooting by up to a factor of 2. This version uses the file size to estimate the required number of points and is faster and more conservative with memory allocation.
     
  • Bug fix: For XY plots with data sent to DPlot via DPlot_AddData, the extents of the plot were sometimes not updated correctly when AutoScale was in effect.
     
  • Bug fix: Reading multiple-column text files with one or more (but not all) columns delimited by quotation marks was broken by the recent change of allowing blank entries.
     
  • Bug fix: When adding more than one point label at a time to a 3D plot, the X and Y location of the currently selected label were not updated properly.
     
  • Bug fix: Extents and other parameters were not recalculated after using the Edit Mode tool. This might have led, for example, to reporting an erroneous minimum, maximum, standard deviation, etc. when using the corresponding text shortcuts.
     
  • Bug fix: Right-clicking on the numbers along the axes of a plot might have caused DPlot to crash due to an integer overflow error if the tick mark interval was very small relative to the value at the cursor ("very small" in this case being about 1/100 million'th of the value).
     
  • Bug fix: DPlot might have accepted nonsense values for point label parameters saved to a DPlot file and subsequently crashed after selecting the Label Points command on the Text menu.
     

June 5, 2006
Version 2.0.5.7

  • Edit Data feature was previously limited to editing 16,384 points. In this version there is no limit on the number of points on Windows 2000 and later versions of Windows. Under Windows 95 and 98 the limit is 32,767 points.
     
  • Point labels may be added to box-and-whisker plots and dot graphs.
     
  • When reading space-delimited multiple-column text files, DPlot previously relied on column headings being right-justified with the associated data columns. This often led to misinterpreting the column headings. In this version the justification is ignored; column headings are assumed to be space-delimited just as the data is. Note that this means that column headings may not contain spaces unless the text is surrounded by quotation marks. (This limitation does not apply to comma- or tab-separated columns.)
     
  • In multiple-column text files DPlot will now accept dates in the form mm/yyyy. In previous versions the day of the month was also required in order for DPlot to correctly interpret the entry as a date. When mm/yyyy is used, the date is set to the first day of that month.
     
  • In tab-separated text files (and only tab-separated, not comma- or space-separated), DPlot now correctly interprets commas used as thousands delimiters.
     
  • DPlot now allows 3D surface plots that have no variation in Z (a horizontal plane, in other words).
     
  • Added settings for point label arrow and line dimensions. Programmatically these values may be set with the new TextPointLabelLeader macro/DDE command.
     
  • Bug fix: If "Always auto-adjust scale factors for 3D plots" option was selected, DPlot would override user-specified scale factors after printing a plot.
     
  • Bug fix: DPlot did not properly handle clipboard data with lines terminated by a carriage return only (as opposed to a carriage return/line feed pair).
     
  • Bug fix: DPlot crashed when saving 3D surface plots if you used a custom color palette with only 1 color.
     
  • Bug fix: Manually-entered extents were not saved to DPlot files with sufficient precision when working with dates and times.
     
  • Bug fix: For university subscriptions only, a timing problem with the splash screen might have caused DPlot to close immediately unless the /NONAG command line switch was used.
     
  • Bug fix: If you checked the "Add labels at intersections" option of the Find Intersections command, any existing point labels might have been shifted to a different point, depending on whether that point occurred before or after an intersection.
     
  • Bug fix: DPlot crashed if it was minimized when GenerateMesh, FFT, Histogram, or other commands that opened a new document window were used. In this version DPlot will be restored before opening a new document window.
     

May 3, 2006
Version 2.0.5.3

  • Excel Add-In BarChart command automatically sets the orientation of labels on the X axis to vertical if more than 10 labels are selected.
     
  • Added ForAllDocuments and matching NextDocument statements for macros. Every macro command between a ForAllDocuments and NextDocument will be performed for all open documents, rather than only the currently active document.
     
  • All parameters for TextFont macro/DDE command are now optional, other than the font index.
     
  • Changed "More Curve Fits" plugin (licensed version only) slightly. In previous versions this module would not accept curves that had two or more points at the same X. This version allows adjacent points to have the same X. (If for whatever reason your data is not sorted in increasing X order and it should be, you can sort the data points using Edit>Sort.)
     
  • Tektronix file import plugin (licensed version only) now includes support for DPO7000 and DSA/DPO70000 instruments.
     
  • Bug fix: Same problem fixed by version 2.0.5.1 for text files existed for pasting data from the clipboard.
     
  • Bug fix: For 3D views of 3D points on a rectangular grid, the "Draw borders" feature sometimes resulted in border lines being partially overwritten by adjoining triangles.
     
  • Bug fix: For XY plots in previous versions if all x or y values were identical, DPlot set the corresponding extents to x (or y) +/- 1. This led to a crash if the magnitude of that x or y value was large enough (about 2.25E15) that x-1 was indistinguishable from x+1. In this release if x=0, the extents are set to +/- 1. Otherwise the extents are set to 0.5x - 1.5x.
     

April 24, 2006
Version 2.0.5.1

  • Bug fix: One more bug associated with the recent change allowing blank entries in CSV files has been found and fixed. In versions 2.0.4.7 - 2.0.5.0 if you opened a file containing more data rows than the current maximum number of points, DPlot might have crashed and/or produced a nonsense plot.
     

April 22, 2006
Version 2.0.5.0

  • Changed the behavior of the Excel Add-In a bit. When appending a new curve to an existing plot using the "XYXY", "XYYY", or "X,Y,Label" commands, if the currently existing document has only one curve and that curve has no legend, then the Y axis label of that document is used as the legend of that existing curve, and the Y axis label is deleted.
     
  • Another Excel Add-In change: In previous versions the XYYY command did not work correctly if a selection included blank columns. To make this work correctly you were required to make multiple selections with the Ctrl key. This version checks for and ignores blank columns.
     
  • DPlot does a better job of trimming white space when "None" is used as the number format for the X or Y axes on an XY plot. Coupled with the printer margin bug fix mentioned below, this change makes the creation of graph paper occupying most of the allowable area of a page much easier. For examples see the Graph Paper page.
     
  • DPlot now takes into account the position of text labels added with Text>X,Y Labels when finding the extents of a graph. In previous versions it was possible to position a label off the screen or printed page.
     
  • Y=f(X) and similar functions as well as text boxes that accept an equation as input will now accept as arguments to the equation the text shortcuts (e.g. $YMAX, $MEAN, etc.) previously used only in title lines, axis labels, and other text entries. For example the equation "Y=X+$MEAN(3)" generates a curve with Y values equal to X plus the average amplitude of the third curve.
     
  • The results of simple equations may now be included in title lines, axis labels, etc. Equations should be prefaced by "$=" and surrounded by parentheses. For example, "The square root of 5 is $=(sqrt(5))" will be replaced with "The square root of 5 is 2.23607". Coupled with the above change, you can include other text shortcuts in these equations, as in "Relative Standard Deviation=$=(100*$STDEV(1)/$MEAN(1))".
     
  • "Check for Updates" (licensed version only) is improved. In previous versions you could only download a given update once. This worked fine in most cases, but became a problem if, for whatever reason, you overwrote the current version with an older one and then attempted to use "Check for Updates" to restore the current release.
     
  • Bug fix: One more problem associated with the recent change of allowing blank entries in multiple columns of numbers (whether in a file or pasted from the Clipboard). If the columns were tab- or comma-separated but contained extra spaces, DPlot became confused about the number of columns.
     
  • Bug fix: With many printer drivers DPlot erroneously added the specified print margins to the minimum margins for the printer. For normal plots this usually made little difference, but for blank graph paper made it very difficult to create paper that took up most or all of the allowable space on a page.
     
  • Bug fix: If you right-clicked on a curve and selected the Color command but then clicked outside the color control to close the control, the control was hidden rather than closed, and still trapped all mouse clicks and arrow keys. Mouse clicks within the associated document window were then ignored.
     
  • Bug fix: Distance from command needlessly updated every time an entry in a text box was changed in any way, rather than when a text box lost the focus. This made it impossible to correctly enter a date in the form m/d/yy.
     
  • Bug fix: Function parser crashed DPlot if an operator (+,-,*,/,^) was not followed by an operand.
     

April 7, 2006
Version 2.0.4.7

  • Added a bar chart command to the Excel Add-In which accepts non-numeric labels for the X axis.
     
  • Added C# and FreeBASIC demo programs to the DPLOTLIB distribution. Improved method of finding DPLOTLIB.DLL when debugging your program within the Visual Basic or VB.NET (and now C#) development environments. DPLOTLIB.DLL and the associated example programs are included in the DPlot Jr setup and are also available as a separate download.
     
  • Sped up 3D views of surface plots of random 3D points by an order of magnitude or more for a large number of points. Previous versions used a scanline z-buffer algorithm that minimized memory usage but had the unfortunate feature of looping through the same data many times. This version uses a z-buffer covering the entire screen (or other output device). The table below shows comparisons between previous versions and the new drawing method. Your results will of course vary, depending on processor speed and RAM. But the relationship should be consistent on all systems.
    Drawing time in milliseconds
    Number
    of points
    Version
    2.4.0.1
    Version
    2.4.0.7
    1,000656547
    10,0002276708
    50,00084171062
    100,000157391515
    500,000757664276

     
  • For XY plots, data columns imported either by pasting from the Clipboard or read from a file of one or more columns of numbers may now include blank entries. This includes blank spreadsheet cells when pasting from Excel, for example. Blank entries are ignored; if the n'th row for a column is blank then the associated curve will connect the (n-1)th and (n+1)th row values. For this feature to work as expected, columns must be tab-separated or comma-separated. (Columns copied in Excel are normally tab-separated).
     
  • For XY plots, added an option on the Point Labels dialog to label all points in all curves. Modified the TextPointLabel macro/DDE command to include this capability.
     
  • For 2D plots added the ability to draw the Y axis label(s) horizontally. To use this feature double-click on the Y axis label, or right-click and select "Horizontal". Added corresponding YAxisHorizontal macro/DDE command.
     
  • Revised image export plugins to accept an optional resolution setting. Originally the resolution field was ignored and left at 0. This led to complaints that DPlot would not produce "high resolution" image files for publication, which of course was not correct. Subsequent versions arbitrarily set the resolution field to 800 dpi, which satisfied those users but caused a problem when importing DPlot-produced images into, among other programs, Microsoft Word: the bitmap was initially scaled to the pixel dimensions divided by the resolution: small, in other words. Please note that the resolution setting has absolutely no effect on the content of the image, other than the header field within the file. It is included for the benefit of those users who require this setting. The actual resolution of the image is determined by the program that displays and/or prints the image.
     
  • Added ability to draw markers at data point locations for 3D data. Currently the marker is limited to a 3x3 black box. To draw markers at data points check the "Data points" box on the Contour Options dialog. Programmatically this feature can be turned on with [SymbolType(1,1)], where the symbol type (the 2nd argument) is 0 to turn markers off, or any non-zero number to turn markers on.
     
  • Added the ability to hide text notes, using either the right-click dropdown menu or Text>Add/Edit Note.
     
  • Error bars can now be drawn horizontally. This option is ignored for bar charts.
     
  • Bar chart bars are now centered within their interval; in previous versions the bars were left justified for width settings less than 100%.
     
  • "Draw sides" for 3D views of random 3D data now works much better than in all previous versions. Previous versions had problems with roundoff errors resulting in portions of edges being overwritten by other edge planes.
     
  • Added a file import plugin (licensed version only) for LeCroy WavePro digital oscilloscopes.
     
  • Bug fix: Recent change allowing tick marks on the outside edges of the graph did not work with exported metafiles: tick marks were clipped.
     
  • Bug fix: It was possible to leave a popup tooltip showing graph coordinates active when switching to another application. This might have resulted in that popup window becoming semi-permanent when switching back to DPlot if another plot was created outside of DPlot, e.g. by the Excel Add-In.
     
  • Bug fix: List Peaks in Box caused DPlot to crash if you simply clicked and released the mouse, rather than clicking and dragging.
     
  • Bug fix: The CTRL+arrow key pan feature for zoomed plots did not work as expected if "Specify number" for the tick mark intervals was selected.
     
  • Bug fix: The Histogram command used a different standard deviation calculation (1/N) than the $STDEV shortcut, List Peaks command, etc. (1/(N-1)). While valid, the histogram calculation has been changed to 1/(N-1) to be consistent.
     

March 4, 2006
Version 2.0.4.1

  • Excel Add-In:
    • Added X,Y,Label command. This creates a single curve in an XY plot and uses entries from the Labels column as point labels. Label column may contain blank entries.
    • XYZSurface command will now interpret a 4th column (if selected) as point labels.
    • Moved Append to existing document menu command to new Options dialog box, which also contains settings for new label features. All settings are stored to the registry and are persistent.
    • Hidden rows are now ignored.

  • Removed, for all practical purposes, the limitation on the number of point labels in a plot. Previous versions were limited to 100 labels. This version is limited to about 15 million labels (2Gb divided by, currently, 140 bytes per label).
     
  • Improved the performance of mouse-activated point labels. In previous versions if the labels were closely-spaced, moving the mouse from point-to-point resulted in screen flashing and remnants of old labels left beneath the new label.
     
  • If using Calendar date number format (as opposed to Date and Time) then in previous versions DPlot would only show the date in dialog box entries for several different commands (for example a note's anchor point), when it might have been more appropriate to show both the date and time. As a result the fractional part of these numbers would be truncated if you simply opened a dialog box and clicked OK. In this version, if the fractional part of a date is 1 second or greater, DPlot will show both the date and time for Calendar date format in dialog boxes.
     
  • Reworked Edit>Combine Curves. Previous versions allowed you to combine the data from one (and only one) curve with that of another curve, and the original curve was deleted. This version allows you to combine 2 or more curves and has an option to preserve the original curves. Modified the CombineCurves macro/DDE command to include a "keep" parameter.
     
  • Coefficients presented in the results of Polynomial Curve Fit are now shown with more significant figures. And the default number of points to generate in the fitted curve is now the maximum of 1000 and the number of points in the input. In previous versions the default was the number of points in the input, which confused many users when they didn't get a smooth curve as a result.
     
  • The feature of showing coordinates in a popup window when hovering the mouse over a data point for 1/2 second is now an option under Options>General. In previous versions this feature was not optional and might have been an annoyance.
     
  • Added Subtract Mean command to the Edit menu for XY plots. This command subtracts the average Y value from all Y values in one or more curves. Added corresponding EditSubtractMean macro/DDE command.
     
  • Added new tick mark features to 1D plots (box-and-whisker plots, dot graphs). See Options>Tick Marks.
     
  • Lighting of 3D surfaces: In previous versions DPlot polled the printer device driver to find the color resolution of the device, and ignored lighting settings if the bits/pixel value returned was 8 or less (256 colors). However, virtual drivers for PDF files return erroneous information. So even though the device driver was perfectly capable of handling a 24-bit picture, DPlot would draw an unlit 3D surface. In this version DPlot pays attention to the bits/pixel setting only for display monitors and assumes that all other output devices can handle a 24-bit picture correctly.
     
  • Bug fix: Last version's fix to eliminate crashes due to integer overflows (related to the tick mark interval being much smaller than the numbers on the axis, usually only a problem with calendar dates) re-introduced a roundoff error on specified extents. You might, for example, specify a lower limit of 2.4 and a tick mark interval of 0.2, but DPlot would reset the lower limit to 2.2.
     
  • Bug fix: Last version's change of allowing tick marks on the outside edge of the plot resulted in a bug if Options>Grid Lines or Box>Axes Only was selected. A couple of parameters for this axis type were not initialized correctly so that the numbers along the Y axis were not drawn and tick marks were not drawn until you switched to another axis type and back again.
     

February 26, 2006
Version 2.0.4.0

  • DPlot_Start function will now check version numbers of dplotjr.exe and dplot.exe and use DPlot Jr if it meets the minimum version requirement but the full version does not. The minimum version is either the default value set within the DLL (currently 2.0.3.3) or a more recent version that you can specify with the new DPlot_MinVersion function. All previous versions of DPlot_Start always used the full version of DPlot if it could be found, unless DPlot Jr was already running and the full version was not.
     
  • Added Tick Marks command to the Options menu to control the placement (inside, outside, or both) and size of tick marks. Previous versions always drew tick marks to the inside of the graph and used a fixed size of 1/2 the height of the font used for numbers and 1/4 of that height for minor tick marks. Added corresponding TickMarks macro/DDE command.
     
  • For XY plots, when using Edit>Edit Data you may now use the mouse to edit existing points or add new points. Also, changes to the data are now automatically reflected in the graph. Taken together, these two new features enable you to "draw" a plot with your mouse. One consequence of this change is that you cannot Cancel the operation unless Undo is enabled. "Snap mouse" option rounds mouse-picked values to "nice" numbers, based on the current tick mark interval. Also added a Sort button, which sorts the data in ascending X order.
     
  • Added "Font..." menu item to the right-click menu for numbers along the coordinate axes.
     
  • Added "X axis increases left-to-right" option for Grain Size Distribution plots.
     
  • File>Append works more consistently with DPlot files. You can now append multiple DPlot files to an existing plot. Settings within the appended plot which affect the entire plot (scaling, extents, tick mark intervals, title lines and axis labels, etc.) are ignored.
     
  • Added NORMRAND function for Y=f(X) and other commands that generate data from an equation. NORMRAND returns a normally-distributed random number from a distribution with a specified mean and standard deviation.
     
  • Better error reporting on image export options (BMP, GIF, etc.). Previous versions simply failed when an error was encountered, with no error message.
     
  • When panning a zoomed plot, pressing the Ctrl key in combination with the arrow keys now pans the plot by 10% of the normal pan distance. (By default, the pan distance is one half of the plot extents. This fraction can be reset with a SetPanFraction macro command.)
     
  • If the crosshair cursor is used, that cursor is now used during a Distance Between Points command. In previous versions the cursor reverted to the default arrow when any dialog box was opened.
     
  • Point labels for invisible curves are not drawn.
     
  • The Colors dialog for XY plots now includes curve legends in the label rather than the generic Curve 1, Curve2, etc.
     
  • Improved the new N1.85 scaling option a bit. Previous version did not allow X values equal to 0. This was simply to avoid math errors and not a physical limitation of the scale.
     
  • Changed behavior when opening files from Explorer, the command line, or a FileOpen DDE command. In previous versions a '+' symbol was always interpreted as a delineator between filenames, so that you could specify multiple files to open on the command line. This is a remnant from DOS 8.3 filenames, when a '+' was not a legal filename character. The problem with this operation is that filenames containing a '+' character could not be opened from Explorer or any of the previously-mentioned methods. In this version, to use a '+' symbol to specify multiple files all filenames must have an extension. Likewise, you cannot open a file from Explorer if the filename contains a '.' character preceding any '+' character.
     
  • Bug fix: Fairly recent addition of N1.85 scaling resulted in changes in the X axis scaling that broke rotated 1D plots (box-and-whisker plots or dot graphs).
     
  • Bug fix: If opening a file from Explorer with "Open" or "Open with", if DPlot was already open and a document was open, then the new document would inherit inappropriate properties of the first document. In most cases this was merely an annoyance, in other cases it might have resulted in a crash.
     
  • Bug fix: DPlot failed to read data columns with values greater than the maximum magnitude of a single-precision floating point number about (3.4E+38) either from multiple-column text files or text columns on the Clipboard.
     
  • Bug fix: If "Always auto-adjust scale factors on 3D plots" was checked, scale factors saved to DPlot files were ignored.
     
  • Bug fix: Image formats saved by DPlot (BMP, GIF, etc., plus bitmaps copied to the clipboard) sometimes included an extra black line along the bottom and/or right sides of the image.
     
  • Bug fix: File>Append presented a bogus error message if appending a DPlot file that contained user-specified tick mark intervals.
     
  • Bug fix: With new N1.85 scale, a dependent second X axis (for example, used for different units) was scaled incorrectly.
     
  • Bug fix: For XY plots with gridlines across the plot and a second X axis related to the primary X axis by an equation, the labels for the second axis were prone to overlap for many unit conversions.
     
  • Bug fix: It was possible to cause DPlot to crash if you attempted to plot a curve on a log Y scale when the curve had only 2 points and one of those points had Y=0.
     
  • Bug fix: DPlot crashed due to an integer overflow if you selected a tick mark interval smaller than either extent divided by about 2 billion (more precisely, 0x7FFFFFFF). This would commonly be a problem when working with calendar dates and a tick mark interval of 1 second or smaller.
     
  • Bug fix: The default extents on XY plots often cut off portions of the data, if the magnitude of the X or Y values was much larger than the default tick mark interval
     
  • Bug fix: Edit>Edit Data did not use a sufficient number of significant figures in some cases.
     
  • Bug fix: Edit>Copy Data Values did not use a sufficient number of significant figures for XY plots with date/time groups on the X axis.
     

February 11, 2006
Version 2.0.3.3

  • Added N1.85 Hydraulic graph scaling. The X axis is proportional to X raised to the 1.85 power; Y axis is linear.
     
  • Added Engineer number format. This is identical to Powers of 10, with the exception that exponents will always be multiples of 3.
     
  • Added USDA Soil Classification option for triangle plots.
     
  • Popup tooltip-like windows showing coordinates that were previously only available for XY plots are now shown in 2D views of 3D data.
     
  • Use 1000 separator is now specific to each axis.
     
  • Bug fix: Previous versions did not save enough significant figures to correctly store date/time groups for note locations and point label locations. Several dialogs did not allow input of dates and/or times when those formats would have been appropriate. And other dialogs that did allow input of date/time groups used text boxes and/or static text controls that were too small to show the entire entry.
     
  • Bug fix: Corrected a bug with saving 'SymbolCycleColors' keyword to DPlot files.
     
  • Bug fix: Corrected a bug in the number formatting routine that might have caused a crash if you either a) used any $ text shortcuts (e.g. $YMAX) or b) used the "Find Intersections" menu command.
     

January 27, 2006
Version 2.0.2.7

  • Added better support for PlotMetrics and PlotMetricsEx "request" items (retrieved with a call to DPlot_Request in DPLOTLIB.DLL.
     
  • You can now right-click on the numbers along any axis of an XY plot to set the plot extents.
     
  • Improved interpretation of dates and times entered in text boxes of various dialogs. In previous versions, dates or times were only accepted as input if the corresponding axis used date or time formatting. This was a minor problem if, for example, you were creating a plot from scratch and attempting to enter dates using the Edit Data input. In this release dates and/or times may be entered regardless of whether the corresponding number format is used. DPlot also does a slightly better job of determining the order of the month, day, and year in a date input.
     
  • Extents and tick mark selection dialog for 3D plots now mimics the XY plot version: Extents can be specified with dates and simple equations; tick marks for date scales can be specified in days, months, years, etc.
     
  • Improved default tick mark selection for 3D plots.
     
  • Added an option for tripartite plots to draw acceleration and displacement grid lines for 2, 3, 4, 6, 7, 8, and 9 times a power of 10.
     
  • Bug fix: Several plot parameters were incorrectly initialized during a macro ForFilesIn loop. In particular the number of symbols used in each legend entry was set to 0 rather than the default 2 and the number of significant figures displayed was set to 0 (meaning values along each axis were rounded to integers). This problem existed only in ForFilesIn loops in which the documents were opened and closed within the loop, for example in a loop to save all DPlot files as images.
     
  • Bug fix: Bitmaps created when saving image files (JPEG, PNG, etc.) were not freed under some circumstances. This might have led to a failure to save subsequent image files, particularly when attempted in a ForFilesIn macro loop.
     
  • Bug fix: Change in previous version allowing British sieve sizes on a Grain Size Distribution plot contained a bug which might have caused DPlot to crash under some circumstances.
     
  • When opening a 3-column text file as a surface plot, if the triangulation on this data failed (such that a MessageBox with "All points are collinear." was displayed), DPlot failed to clean up all of the data structures used for a surface plot. This bug might have then led to a crash when subsequently opening another file.
     
  • Bug fix: New Excel Add-In feature, "Append to active document", erroneously created an extra curve with 0 points on XY plots.
     
  • Bug fix: Function parser included in the last several releases neglected to include acosh, asinh, and atanh functions.
     
  • Bug fix: Lecroy WavePro file import filter did not properly handle 1-byte data records. These records were assumed to be unsigned bytes (0 to 255) rather than the correct signed bytes (-128 to 127).
     

December 17, 2005
Version 2.0.2.2 addendum

  • A mistake in the Excel AddIn distributed with version 2.0.2.2 will cause the AddIn installation to fail for many non-English speaking users. The problem has been fixed in all distributions. If this problem affects you and you have already downloaded version 2.0.2.2, you can get a fixed AddIn installation in this much smaller (123Kb) file: addinstall.exe
     

December 16, 2005
Version 2.0.2.2

  • Added "Append to active document" option to Excel Add-In menu. If checked, the XYXY, XYYY, OneCurvePerRow, XYZScatter, and OneD functions will generate a new data set in the currently active DPlot document rather than opening a new document if the active document is of the expected type (XY plot, 3D scatter, etc.). It is not necessary for that document to have been created by the Add-In. Likewise, the XYZSurface command will append the selected data to an existing surface plot. This option is ignored for the ZGrid Add-In command. This new functionality requires this update of DPlot or DPlot Jr; it will not work correctly with previous versions.
     
  • Added a Help file and Help menu command for the Excel Add-In.
     
  • Legend and note location is handled slightly differently in this version than in all previous versions. In previous versions the top left corner of the imaginery rectangle surrounding the text of the object was the reference point for that object's location. If the legend or note is framed, that frame includes a 1 character width and 1/2 character height whitespace border. The disadvantage to the previous reference point was that when printing to large format paper, the discrete font sizes used on your display would result in (usually) small roundoff errors that made it impossible to place the frame surrounding the legend or note in exactly the same location on the display and printed output. In this version the frame surrounding the object is used rather than the imaginery rectangle enclosing the text. So, for example, if the legend reference point is the top left corner (also new, see below) and the location is specified as (0.5, 0.5), then the top left corner of the frame surrounding the legend will be in the exact center of the plot on all output devices. Also added inputs for the legend location on the Legend dialog box; previous versions were limited to dragging the legend with the mouse. Please note that this change will result in a slight shift of the legend and all text notes in previously saved DPlot files.
     
  • Legend and text notations may now be aligned to the left, center, or right horizontally and top, middle, or bottom vertically. In previous versions the top left corner was always used. Modified LegendParams macro/DDE command to take into account this new capability.
     
  • Note placement may now be tied to data space, rather than a fixed location relative to the plot. Added TextNoteEx macro/DDE command to handle this new capability as well as the alignment mentioned above.
     
  • Notes may now be up to 4095 characters long. Previous versions were limited to 511 characters.
     
  • Added color selection to right-click dropdown menu for curves in XY plots.
     
  • 3D scatter plots may now have line segments between data points. Added ScatterPlotLines macro/DDE command.
     
  • DPlot now does a better job of preserving user-selected file extensions for most file types.
     
  • You may notice a substantial improvement in the time it takes DPlot to shut down with this version. Previous versions did a bit of unnecessary housecleaning in dplot.ini.
     
  • Info>Interpolate now allows you to input a date value for X if one of the calendar date number formats is used for the X axis.
     
  • View>Reorder Curves now includes "curves" which serve only as the source of error amplitudes for error bars. In previous versions these curves were not included, which made it very hard to correctly associate colors with curves.
     
  • If you create a curve in an empty document using an equation (Y=f(X), etc.) and check "degrees", the polar plot "degrees" option is now automatically turned on (that is, input angular values are assumed to be in degrees rather than radians). Likewise if "radians" is checked when creating a curve, the "radians" polar option is turned on.
     
  • Added an option to outline solid filled symbols on XY plots in black. In previous versions all symbols on XY plots were drawn with a single color.
     
  • Added pressure unit selection to Data Processing dialog (psi, megapascals, and kilopascals). Previous versions were limited to psi.
     
  • You can press the Escape key to cancel a plot pan (normally done by dragging the mouse).
     
  • Bug fix: On a zoomed plot if you clicked on a note or the legend, then the pan arrow appeared once you moved the mouse, even though the plot would not be panned.
     
  • Bug fix: The pan feature for zoomed XY plots erroneously panned the plot a small distance if you simply clicked within the plot. This version does not pan the plot unless you drag the mouse by 10 or more pixels before releasing.
     
  • Bug fix: Color selections saved to a DPlot file were incorrectly assigned if the file was opened with File>Append (appended to an existing plot).
     
  • Bug fix: Axis labels and legends with embedded carriage return/line feed sequences or line feeds only were handled improperly in DPlot. You might end up with these embedded characters if, for example, you use Alt+Enter in a column heading in Microsoft Excel to force a line break in a label. When saved to a DPlot file these embedded characters were preserved, which in some circumstances caused DPlot to crash when reading that saved file. In this release DPlot 1) prevents this crash with previously saved files, 2) when pasting data from the clipboard or handling data passed by DPLOTLIB.DLL (from the Excel Add-In, for example), replaces these characters with the literal characters \n (which DPlot recognizes as a line break) in title lines and axis labels, or a space in legend entries, and 3) performs the same check before saving a file, for cases that might have been missed by #2.
     
  • Bug fix: If bitmap dimensions specified with Edit>Copy>Dimensions or any of the image export plugins was set to a very small non-zero value, then DPlot would waste a lot of time trying to find a combination of font sizes and plot size that would fit within the specified rectangle, taking minutes to produce a bitmap instead of the normal second or so. In this version if either the width or height values are less than 100 pixels, DPlot behaves as if those values were set to 0: the document window dimensions will be used.
     
  • Bug fix: Relatively new feature of being able to select multiple curves in the Symbol/Line Styles dialog had a bug that could under some circumstances cause DPlot to crash.
     
  • Bug fix: Text notations were sometimes written improperly to DPlot files, such that the file could not be reopened by DPlot. If this happens with a previously saved DPlot file for you, you can fix the problem by opening the file in Notepad and searching for 'NoteV2'. The following line should contain 4 numbers separated by one or more spaces or by a single comma. Normally this will be a problem when the first number uses scientific notation and the 2nd number is negative. For example, ' 0.1584E-01-0.3300E-01' should be ' 0.1584E-01 -0.3300E-01'.
     
  • Bug fix: XY label selections (created with Text>XY Labels)were inappropriately passed on to new XY plot documents, rather than being cleared out.
     
  • Bug fix: The Delete button on the Reference Lines dialog deleted the incorrect reference line if more than one line existed.
     

November 2, 2005
Version 2.0.1.6

  • DPlot now stores the last 20 equations used by Y=f(X), Y=f(X,Y1,Y2,...), Z=f(X,Y), and Operate on |X,Y,Z|. Previously used equations are available from a dropdown list.
     
  • If a path is not specified in the GetPreferences macro/DDE command, the default preferences folder is assumed (c:\Documents and Settings\<username>\Application Data\DPlot\Preferences on Windows 2000 and XP). If a filename extension is not included, ".set" is appended.
     
  • Bug fix: There were a few remaining problems with false positives for mouse clicks associated with the line style/symbol style right-click menu and with edit mode when clicking on nearly vertical portions of curves consisting of densely-spaced points.
     
  • Bug fix: Ambient light fraction for 3D lighting was ignored on Contour Options dialog.
     

October 31, 2005
Version 2.0.1.5

  • Added light source shading for 3D views of 3D surfaces.
     
  • DPlot will now accept dates in text files or from text on the clipboard with months spelled out or abbreviated. For example 26-Oct-05 or 26-October-05 are acceptable, as well as variations on month, day, year order and dashes vs. slashes as separators. Previous versions were limited to numeric entries for months, and only m/d/yy, m/d/yyyy, or yyyy/m/d (or m-d-yy, etc.) were accepted. As in version 2.0.1.4, if the year is not the last value, then it must be 4 digits. See the new FAQ entry on stock market records for a nifty usage of this feature.
     
  • Amended last update's new Copy feature on the Scanning Points dialog to allow you to specify whether X, Y, or both X and Y are copied to the clipboard.
     
  • By popular demand, amended right-click menu behavior. If you right-click outside the extents of an XY plot, the Edit menu will now be shown. Previously this operation showed bits and pieces of the Options menu. If you right-click numbers along the axes, you'll get Extents/Tick Marks/Size and Multiple Axes as well as number formatting options.
     
  • DPlot does a better job handling user-specified extents and intermediate tick/grid intervals on calendar scales.
     
  • Bug fix: Drag-and-drop operations and Explorer "Open With" commands failed for CSV files if lines were terminated with line feeds only, rather than the normal PC-world carriage return/line feed pairs.
     
  • Bug fix: Mouse hit tests for right-click line/symbol style menu and Edit mode left clicks often returned false positives when clicking near vertical portions of curves.
     
  • Excel Add-In does a better job of determining when columns use some form of date formatting and turns on Calendar Date number format in DPlot when found.
     

October 26, 2005
Version 2.0.1.4

  • Several new functions have been added to the function parser used by Y=f(X) and similar commands:
    • ACOSH, ASINH, ATANH - Inverse hyperbolic cosine, sine, and tangent, respectively.
    • BESSELJ returns the Bessel function of the first kind for the specified X value and order.
    • BESSELY returns the Bessel function of the second kind for the specified X value and order.
    • DATE returns the Excel 1900 date system serial number that represents the input year, month, and day. (This function has been in place for several versions but has been improved such that it accepts variable arguments.)
    • DAY, MONTH, and YEAR return the day of the month (1-31), month (1-12), and year of the input Excel serial number.
    • MOD - Remainder after division.
    • NORMDIST returns the normal distribution for a given mean and standard deviation
    • RANDBETWEEN returns a random number between specified limits.
    • SIGN returns -1 if the argument is less than 0, 0 if the argument is equal to 0, and 1 if the argument is greater than 0.
    • WEEKDAY returns the day of the week (1=Sunday, 7=Saturday) for the input Excel serial number.
    • WEEKNUM returns the week number within a year for the input Excel serial number.

     
  • For bitmaps copied to the clipboard with the width or height set to 0 (via Edit>Copy>Dimensions) or saved image files (BMP, GIF, JPG, PNG, TIF) with the width or height set to 0, DPlot uses the current document window dimensions as in previous versions, but in this version eliminates the white space around the plot, leaving no more than a 10 pixel border.
     
  • You can now set the dimensions used for copied metafiles (Edit>Copy>Dimensions) to 0. If either the width or the height is set to 0, then subsequent metafiles will be approximately the size of a maximized document window, limited to 327.67 millimeters (about 12.9 inches). This change will result in metafiles having the same aspect ratio seen on the screen for maximized documents. For best results with copied metafiles the preferred approach remains the same: Use Options>Extents/Tick Marks/Size and check the Specify size box.
     
  • The capabilities of the X Labels command for XY plots has been expanded significantly. You may now have up to 100 labels. Labels can be placed on the X or Y axis on any side of the plot, and you can specify an offset from the numbers normally appearing along that axis so that labels and numbers don't overlap. Added XYLabel macro/DDE command. XLabel command is still supported but is obsolete.
     
  • DPlot will now correctly interpret dates from text files in the form yyyy/m/d in addition to the default m/d/yyyy. This change requires 4 digit years for the form yyyy/m/d, while trailing years may be either 2 or 4 digits.
     
  • DPlot will now correctly interpret columns of percentages in both clipboard data and text files. Previous versions balked at the % sign.
     
  • The "Files of type" selection on the Open dialog for each file type is now preserved.
     
  • Added an option to use British standard sieve sizes rather than U.S. standards on a grain size distribution plot.
     
  • Added a Copy button to the Scanning Points dialog for XY plots. If clicked, the currently selected data point's X and Y values are copied to the clipboard using the default number format.
     
  • If "None" was used as the number format for the X, Y, or Z axes, then in previous versions those numbers were not displayed in several dialog boxes, on the status bar when moving the mouse, nor when using $X, $Y, or $Z shortcuts in point labels. In this release the default number format will be used in place of "None".
     
  • The MoveCurves macro/DDE command will now accept a document index in place of the destination document caption. So [MoveCurves(1,-1,0)] copies all curves to document #1.
     
  • The default tick mark interval (neither "Specify number" or "Specify interval" has been selected) is now 1, 2, 2.5, or 5 times a power of 10 for the default number format. If "Specify number" is selected then, as in previous versions, the tick mark interval will be 1, 1.5, 2, 2.5, 3, 4, 5, 6, or 8 times a power of 10.
     
  • Added $FILETITLE placeholder for titles, legend, axis labels, etc. If used, it is replaced by the text appearing in the title bar of the document, normally the document filename if it has been saved.
     
  • Minor tick marks or grid lines are now supported for probability scales.
     
  • Bug fix: The use of a bold font in text notations or the legend sometimes resulted in the frame around that text being undersized when rendering the plot to an enhanced metafile. This problem was due to an inconsistency in the size of bold fonts between the display and a rendered metafile.
     
  • Bug fix: On some versions of Windows character placement in text entries using subscript or superscript attributes was incorrect in enhanced metafiles. In particular, the text following a subscript was shifted too high (too low in the case of superscripts).
     
  • Bug fix: It was possible to close a document without destroying the popup window displaying a data point's coordinates (created by hovering the mouse over a point). It was then not possible to remove that popup window without closing DPlot.
     
  • Bug fix: Popup window displayed on XY plots when you hover the mouse over a data point was always drawn to the upper right, possibly off-screen.
     
  • Bug fix: Similarly, the default location for point labels might have been outside the plot in previous versions.
     
  • Bug fix: DPlot had problems reading heading lines from text files if the line contained a long string of "*" symbols. These entries were erroneously interpreted as NaN's (Not-a-Number), which led to subsequent goofy behavior.
     
  • Bug fix: For exported bitmap images, if the height or width was set to 0 (meaning use the display window dimensions) and the document window was not maximized, the sizes of several text entries were incorrect unless you used the "Specify plot size" option under Options>Extents/Tick Marks/Size.
     
  • Bug fix: Grid lines in standard metafiles were usually drawn in black, regardless of the specified color. This problem did not exist for enhanced metafiles.
     
  • Bug fix: Point labels on triangle plots were drawn in the wrong location.
     
  • Bug fix: Edit>Truncate X was broken when Data Processing mode was in effect.
     
  • Bug fix: If "Always auto-adjust scale factors on 3D plots" under Options>General was checked, that setting took precedence over any ContourScales command that was sent to DPlot in the initial plot creation (via DPlot_Plot, etc.). Subsequent ContourScales commands sent via DPlot_Command worked as expected. In this version the program-defined scale factors will be used regardless of the "Always auto-adjust..." setting.
     

September 21, 2005
Version 2.0.1.1

  • Bug fix: DPlot_AddData and DPlot_AddData8 with random 3D data were broken in the last several releases.
     

September 19, 2005
Version 2.0.1.0

  • Improved labeling of contour lines. In previous versions if a line segment crossing a grid triangle was less than 3 pixels long, no label was drawn at that line segment. The purpose of this decision point was to ensure that roundoff error did not cause labels to be drawn at the incorrect angle. For densely-populated plots this might have resulted in no labels being drawn. Thanks to Alan Lipp for his assistance with this problem.
     
  • For several macro/DDE commands, many parameters are now optional that were required in all previous versions. For example, on an XY plot you can force the extents of the Y axis and leave the extents of the X axis alone with [ManualScale(,ylo,,yhi)]. In this version this new capability is included in the ManualScale, LegendParams, NumTicks, TickInterval commands. Future versions will expand this capability to other commands.
     
  • FileSaveAs macro command may now include replaceable parameters |PATH|, |FILENAME|, and |EXT| in the filename argument. If used, the corresponding elements from the original file (assuming a plot was created via FileOpen) will be substituted.
     
  • You can now paste multiple data sets from the Windows clipboard for 3D scatter plots into DPlot at once. Data sets (groups of 3 columns) should be separated by a blank line.
     
  • Bug fix: Pasting additional data sets into a 3D scatter plot might have wiped out one or more of the previous data sets.
     
  • Bug fix: The Excel Add-In might have failed on a network installation with a runtime error code of 5. This was due to the Add-In using the App.Path property to change the working directory to the location of the Add-In. The App.Path property might have been returned as a UNC path (e.g. \\Server\Share) rather than a drive path, and the Add-In would fail when attempting to ChDrive to that "folder".
     
  • Bug fix: Axes at Zero option for XY plots did not work quite properly unless both the X and Y axes crossed 0.
     
  • Bug fix: Filter command might have caused DPlot to crash with an overflow error if the specified frequency values were greater than 1/2 the sampling frequency of the input.
     
  • Bug fix: User-specified extents were not properly saved to DPlot files for 1D plots (box-and-whisker plots and dot graphs).
     
  • Bug fix: Scale factors for 3D randomly-spaced points were not restored correctly from a saved DPlot file.
     
  • Bug fix: On XY plots, setting the "Maximum number of rows" in the legend to 1 (so that the legend should have a single row) did not work correctly.
     
  • Licensed version only: Added File Import plugin for AMO Transient Recorder Files.
     

July 15, 2005
Version 2.0.0.3

  • Added GIF file export plugin.
     
  • Trial version of DPlot now includes all image export plugin modules previously only distributed with the licensed version: BMP, JPG, PNG, TIF, and now GIF.
     
  • Bug fix: Using a negative scale factor for the Y values on 2D contour plots resulted in a blank plot.
     
  • Bug fix: In the last several releases, if you did not specify the size of plot for 3D surface plots using shaded bands of color (as opposed to contour lines), printed plots of 2D views would be forced to square, regardless of the plot extents or scale factors.
     
  • Bug fix: Magnitudes greater than 2^31 caused DPlot to crash if "Calendar date" or "Date and time" number formatting was used. This version checks for valid extents: -115859 (Oct 15, 1582) to 2958465 (Dec 31, 9999) and uses the default number formatting scheme if the actual extents are outside that range.
     

June 29, 2005
Version 2.0.0.1

  • Bug fix: The ability to read a text file containing 3D data (X,Y,Z columns) was broken in version 2.0.
     
  • Bug fix: Under some circumstances the angular labels on a polar plot were clipped when saving to an enhanced metafile or copying an enhanced metafile to the Clipboard.
     

June 27, 2005
Version 2.0

  • XY command now accepts numbers as times (e.g. 09:21:15.34 PM), dates, or date and time groups.
     
  • Calendar date and Date and time number formatting now allow dates from October 15, 1582 (first usage of the Gregorian calendar) up to December 31, 9999. Previous versions had the same limitations as MS Excel: January 1, 1900 to 2078.
     
  • The maximum number of point labels (created with Text>Label Points or a TextPointLabel macro/DDE command) has been increased from 50 to 100. A future release will remove the limit entirely.
     
  • You can now specify 0 values for the width and/or height of bitmap images copied to the clipboard under Edit>Copy>Dimensions. If either dimension is 0 then the corresponding document dimension will be substituted when you select Edit>Copy.
     
  • Added an option for bar charts to specify the space between bar groups (bars at the same ordinate). Amended BarWidth macro/DDE command to support this feature.
     
  • Grain size distribution plots had a few problems related to the axis type selection (No grid lines, Grid lines, or Box). "No grid lines" is now disabled for these plots and, if that option was previously selected, the axis type is forced to "Grid lines"
     
  • Changed Generate>Switch independent variable menu command to allow you to: a) not sort the resulting curves in increasing order of the newly-selected X values, and b) replace the existing curves with the result of this operation. Previous versions always sorted the new curves and always placed the results in a new document. Modified the SwitchX macro/DDE command to accept an options parameter; if omitted the curves will be sorted and placed in a new document.
     
  • Custom date formats and major and minor grid line types are saved to preference files.
     
  • Bug fix: Powers of 10 number formatting might have caused a crash under certain circumstances if the magnitude of the associated numbers was larger than 1E26.
     
  • Bug fix: On startup with Windows 2000 and XP, DPlot failed to create a \Preferences folder below the \Application Data\DPlot folder unless you had a previous default settings file (default.set) in the DPlot folder. This in turn led to the failure of all of the "Make defaults" checkboxes on various dialogs.
     
  • DPlot will now intepret hexadecimal values in multiple-column text files or from the clipboard if those values have a "0x" prefix.
     
  • Bug fix: Negative values on a scale using Time formatting were incorrect: -1 was shown as 1:00 AM rather than 11:00 PM, for example.
     

11 May 2005
Version 1.9.9.9

  • Bug fix: Last release's relaxation of date scale tick intervals introduced a bug that would in some circumstances cause incorrect scaling: the dates along the axis were inconsistent with the data values.
     
  • Bug fix: FileClose() macro/DDE command left uninitialized data behind that might cause a divide by 0 crash when subsequently opening a new document with a FileOpen or ForFilesIn command.
     

10 May 2005
Version 1.9.9.7

  • Licensed version only: Added a "Check for Updates" option on the Help menu. Of course this option will not be particularly useful until the next update, but in the future this feature should help alleviate many of the problems associated with e-mail notices. This option is disabled and hidden if you do not have write privileges to the folder where dplot.exe is installed. For any programmers who are wondering, this feature makes use of the excellent Web Update Wizard.
     
  • When interpreting multiple-column ASCII text files (file type D on the "Select File Type" dialog), if the first column contains calendar dates and the second column contains times and the file is space-delimited (rather than comma- or tab-delimited), those two columns are now grouped together as a date and time value. Previous versions would interpret these as separate data columns. This change does not effect comma- or tab-delimited columns w/o a delimiter between the date and time or date and time values surrounded by quotation marks, which were and continue to be interpreted correctly.
     
  • Last version's changes intended to make DPlot work on systems w/o admin privileges were not made to plugin modules that saved default settings to configuration files within the plugin folder. In this version those default settings are written to the registry, to HKEY_CURRENT_USER\Software\DPlot\Plugins.
     
  • Also related to multiple-column ASCII text files: if there are more than 4 header lines in a space-delimited file, DPlot will use up to 3 lines before the start of the data to build legends and/or axis labels. For example if the 3 lines preceding the data are:
     
    RangePressureImpulse
    feetpsipsi-sec
    <blank><blank><blank>

    then the X axis label will be "Range, feet" and the legend entries for the 2 curves will be "Pressure, psi" and "Impulse, psi-sec".
     

  • Added GeneralOptions macro/DDE command to control the settings made with the General command on the Options menu.
     
  • Made several changes to both DPlot and DPLOTLIB.DLL concerning whether DPlot should be activated or not when calling DPLOTLIB functions. If DPlot is not hidden (as it is in the bitmap demos) then it will be activated, restored if minimized, and brought to the foreground by calls to DPlot_Plot. In all other cases (DPlot is hidden or with calls to DPlot_Command, DPlot_AddData, etc.), the Z order and activation of DPlot is left as is. This change is ineffective with console applications. This change fixes a previous crash: if DPlot was minimized at the time DPlot_Plot was called, on Windows 2000 (but curiously, not XP) DPlot crashed. It also eliminates annoying flashing of the calling application's caption when various DPLOTLIB functions are called.
     
  • More changes to right-click menu behavior:
    • On XY plots, if you right-click just outside the box surrounding the graph you will get the Grid lines or box submenu.
       
    • When right-clicking within the box surrounding the graph when either or both of the X and Y axes use a logarithmic scale, the Log Scale Tick Labels submenu is appended to the scales dropdown menu.
       
    • When clicking outside the box surrounding the graph, a scaled down version of the Options menu (minus menu commands that are handled in other areas) is displayed.
       
  • Automatic selection of tick mark intervals when "Specify interval" is checked has been relaxed a bit. In this version user-specified intervals less than 15 days are honored regardless of the extents.
     
  • Bug fix: Recent change in the interpretation of multiple-column ASCII text files to allow more leeway in date formats might have caused DPlot in some cases to incorrectly interpret a number as a date. Generally this bug led to DPlot skipping rows of real data once it found a number in the same column that could not be interpreted as a date.
     
  • Bug fix: On XY plots, transparent legend boxes with a frame were sometimes filled with black.
     
  • Bug fix: Generate mesh command was broken if the input data was Z values on a rectangular grid, as opposed to randomly-spaced X,Y,Z values.
     
  • Bug fix: SaveUndo() macro command was broken in version 1.9.9.5 and did not save an undo file.
     
  • Bug fix: Symbol styles were not properly saved to DPLOT.INI in version 1.9.9.5. Normally, default symbol styles are read from this file when you first start DPlot. Symbol styles for the active document are saved to this file when you close DPlot.
     
  • Bug fix: There were several problems with minor grid lines: lines drawn outside the extents of the plot when date scales were used and, on the Y scale, being drawn in the wrong location if minor grid lines on the X axis were not also used.
     
  • Bug fix: Version 1.9.9.5 of DPLOTLIB.DLL did not properly start DPlot Jr in a hidden state when hidden was called for.
     

1 May 2005
Version 1.9.9.5

  • DPlot no longer requires any sort of administrative privileges to install or run. Preference files, contour palette files, and dplot.ini are now saved to the \DPlot folder below the user's Application Data folder (e.g. c:\Documents and Settings\<username>\Application Data\DPlot ), macros are now saved to \DPlot\Macros below the Application Data folder, and the default folder for saving data files is the \DPlot folder below the "My Documents" folder (e.g. c:\Documents and Settings\<username>\My Documents\DPlot. When this version is first run, any existing macros, the default.set preference file (if it exists), and dplot.ini are moved from the DPlot folder to the appropriate folder. Example DPlot files will be copied to the ...\My Documents\DPlot folder.
     
    Please note: If you use DPLOTLIB.DLL to drive DPlot or DPlot Jr in a hidden state from your own application, the above change requires an updated version of DPLOTLIB.DLL. The old version will continue to work, but if DPlot is set to "always maximize" then it will not be hidden when launched from your application. The new version of DPLOTLIB.DLL will launch DPlot or DPlot Jr correctly. DPLOTLIB.DLL is distributed with DPlot Jr and also as a separate download.
     
  • Added right-click menues for setting the number formats used on the coordinate axes. Click on any number to bring up a list of available formats.
     
  • The Curve list of the Symbol/Line Styles dialog for XY plots now allows multiple selections. So you can, for example, set the line and symbol styles for several curves with one operation rather than several. Thanks to Mason Guy for the suggestion.
     
  • Added accelerators (shortcut keys) for the text attribute buttons for the titles and axis labels, text notations, legend, fill regions, etc.
     
  • Changed the behavior of right-click menu when you click within the graph area of an XY plot. Previous versions showed the Edit menu, which was not especially useful. This version shows scale types (Linear X Linear Y, etc.) and any options specific to that scale type.
     
  • The Swap X,Y command now swaps user-specified extents, tick mark settings, number formats, axis labels, and other axis-specific attributes in addition to the X and Y values. For XY plots this swap is performed only if all curves are selected. Previous versions might have been confusing if the user-specified X extents were very different than the Y extents, for example.
     
  • Bug fix: If you used "Specify extents" with a polar plot and subsequently switched to any other scale type, DPlot crashed. This was due to the low and high extents being set internally to meaningless numbers that were ignored for polar plots. An aesthetic, related change: if a polar plot had angular values in degrees (rather than the default radians) and tick mark intervals were manually set, when switching to a different scale type you'd generally get many more tick marks than intended, since the interval is stored internally in units of radians. In this version the tick mark interval is multiplied by 180/PI when switching from polar plots to another scale. The reverse operation is performed when switching back to a polar plot.
     
  • Bug fix: One more glitch with printing surface plots with shaded bands has been fixed. In the previous 3 releases if you did not have Specify size and WYWISYG on the Extents/Tick Marks/Size dialog checked, the fonts used in the plot were a very large scale and resulted in overlapping text and not much else. In this version if Specify size is not checked, the plot will be scaled to an 8 inch x 8 inch box, and scaled down if necessary to fit the page margins. To ensure that the printout resembles the plot you see on the display, though, it has always been and will always be best to check the Specify size and WYSIWYG boxes.
     
  • Bug fix: $STDEV text shortcut displayed the result using standard C runtime function, while most other shortcuts used DPlot's internal number formatting routine. This is primarily of importance to users who use a comma for a decimal point.
     
  • Bug fix: It was all but impossible to add or edit more than one point label for 3D plots due to a bug with updating the dialog when selecting a different label. Thanks to Steven Dixon for pointing out the problem.
     
  • Bug fix: The recent addition of displayed Z min, max, and average values caused DPlot to crash if you entered X and Y extents that were completely outside the limits of the data for 3D plots.
     
  • Bug fix: On Windows XP if you single-stepped through all or part of a macro and did not stop the macro within the macro editor, instead shutting down DPlot, the macro editor was left in memory.
     
  • Bug fix: The Average surfaces command for surface plots contained an error that sometimes resulted in a crash if the first plot selected consisted of randomly-spaced 3D points.
     
  • Bug fix: View>Playback feature did not properly clip graphs to the box surrounding the graph.
     

4 April 2005
Version 1.9.9

  • Bug fix: Several problems with text shortcuts ($YMAX, etc.) have been fixed: $MEAN always displayed the mean for the first data set. $STDEV calculation was inadvertently fouled up when checks against overflows were plugged in to the calculation.
     

3 April 2005
Version 1.9.8.9

  • Removed the 16-color limitation for XY plots; all curves may now have unique colors assigned. This change will not break previously saved DPlot files: if a DPlot file contains more than 16 curves then the colors for the 17th and subsequent curves will automatically be copied from the colors 1-16. This change may produce unintended consequences with programs that drive DPlot via DPLOTLIB.DLL: Color specifications for the 17th and subsequent curves will not be automatically set. See ColorCycle command below for a quick fix.
     
  • Added ColorCycle macro/DDE command. This command allows you to quickly copy a specified number of colors to all subsequent groups of the same number of colors for XY plots.
     
  • For 3D surface plots and scatter plots, the user-defined color palette may now contain up to 64 colors. Previous limit was 16.
     
  • On XY plots if you hover the mouse over a data point for approximately 1/2 second, a tooltip-like window will show the legend (if any) and the X and Y values of that data point.
     
  • Calendar date number formatting may now include the day of the year (Jan 1 = 1, Dec 31 = 365 or 366) by including a lowercase n in the date formatting string. For example, Feb. 25, 2005 formatted with "n/yyyy" will be displayed as 56/2005.
     
  • For XY plots, most input dialogs that take numeric input that is related to the X or Y axes now display those numbers and accept input using the number format for the associated axis. For example, if calendar date is used on the X axis then the X limits of some operation may be entered using m/d/yyyy format. Simple equations that are not a function of some variable may also be used. For example you can enter "2*PI" rather than "6.28...." as an input. This change has been applied to the Extents/Tick Marks/Size dialog, the dialog for Y=f(X) and similar equation-parsing routines, the Reference Lines dialog, and many of the commands on the Edit menu.
     
  • Text placeholders ($YMIN, $YMAX, etc.) now use the same number formatting as the corresponding axis, if any. Previous versions always displayed these values using the default number format.
     
  • Polar plot options now includes an option to specify which radial line the axial grid lines start at. In all previous versions axial lines started at the center of the plot. This change helps avoid clutter near the center of the plot.
     
  • For bar charts with a single data set, added an option to use unique colors for each bar.
     
  • For XY plots, added the ability to specify text labels to use in place of or in addition to the numbers, dates, or times on the X axis. This is particularly handy for many bar charts in which the X axis is not linear or is not easily described with numbers. See Text>X Labels.
     
  • DPlot will now process time values in text files (e.g. 3:58:17.2435 PM) down to microseconds. Previous versions ignored digits after the hundredths of seconds place.
     
  • A forced change in version 1.9.8.5 - resetting extents and tick mark intervals after using Operate on X or Operate on Y - is now optional. See Options>General: Adjust extents after applying transform to data values.
     
  • Added SetPanFraction macro/DDE command, which controls how much the plot is panned when 1) using the arrow keys on a zoomed plot, 2) sending data to DPlot via the XY or XYXY commands or 3) when adding data with DPlot_AddData. Default value = 0.5. In the case of the XY and XYXY commands and the DPlot_AddData function, this means that the plot will be scrolled by half of its width whenever the X extents are exceeded.
     
  • The Delete points in box command for XY plots was very inefficient for large data sets, particularly those with unsorted X values.
     
  • Licensed version only: Modified the solution procedure for Friedlander's equation in the More curve fits plugin to ignore the contribution of time values occurring before any iteration's assumed arrival time or after an iteration's assumed duration. In previous versions, it was necessary to uncheck the Fit all points box and specify the start and end of the points you wanted to fit.
     
  • Licensed version only: Added "Z Table" file import plugin. This plugin takes tabulated Z values from a text file with assumed equal spacing in both directions (X = columns, Y = rows), prompts you for the X and Y extents, and produces a surface plot.
     
  • Bug fix: Change to version 1.9.8.5 to speed up printing of 3D surface plots with shaded color bands did not work on many printers and on none of the Adobe Acrobat virtual printers. This version should work on all printers.
     
  • Bug fix: Subtract surfaces command for 3D surface plots might have crashed if the source plot had user-specified extents and "Always auto-adjust scale factors on 3D plots" was checked under Options>General.
     
  • Bug fix: DPlot sometimes incorrectly clipped portions of 2D views of 3D surface plots with shaded bands of color if user-specified extents were used.
     
  • Bug fix: Function parser (used by Y=f(X), etc.) returned incorrect results if the function contained a number with a trailing decimal point followed by a close parenthesis. Function parser also crashed if the equation contained a leading decimal point.
     
  • Bug fix: The Find intersections command did not correctly turn off a flag indicating that the curve had evenly-spaced X values when you elected to insert a new data point at the intersection. This might have led to an incorrectly-saved DPlot file: one that specified a constant X spacing with only the start and end values of X stored in the file, which in turn led to the incorrect X values being generated when you reopened the file.
     
  • Bug fix: Zoom information for XY plots was saved to DPlot files with an insufficient number of significant figures, particularly for date values on the X axis. This problem in turn might have led to a crash when reopening previously saved DPlot files if the saved low extent was equal to the high extent. DPlot now checks for this problem when reading DPlot files and, for new plots, saves those extents with up to 12 significant figures.
     
  • Bug fix: PI Fractions number formatting sometimes left off a leading minus sign for negative numbers, and also failed to reduce fractions to their simplest form. For example π/2 might be displayed as 5π/10 in some cases.
     
  • Bug fix: The window parameter of the EditSmooth macro/DDE command has been ignored in the last several revisions.
     
  • Bug fix: Last version's change of supporting very long lines of text in input files broke drag-and-drop functionality for most file types. The routine that attempts to determine what format a dropped file is returned a false positive for file type D with most file formats.
     
  • Bug fix: For probability scales on the X axis, the X axis label overlapped the numbers below the X axis on some output devices: various printers and metafiles. Same problem existed for the numbers on the upper X axis and the 2nd or 3rd title line, if used.
     
  • Bug fix: On XY plots, curve labels (text appearing beside the last data point in a curve) were clipped when drawn to metafiles.
     

21 February 2005
Version 1.9.8.5

  • Licensed version only: Made significant improvements to the Bitmap to 3D file import plugin.
     
  • Files opened as type D (Multiple columns (2D)) or K (3D - X, Y, Z columns), including but not limited to .CSV files, may now have lines up to 8192 characters long. Previous versions were limited to 1024 characters. Similarly, saved CSV and tab-separated values files may now have lines up to 32,768 characters long. In previous versions attempting to save CSV or tab-separated columns with lines longer than 1024 characters resulted in an I/O error message.
     
  • The "Multiple" feature on the Print dialog (allowing you to print multiple documents on the same page) has been amended to allow an arbitrary number of columns. Previous versions were limited to 1 row, 1 column, or 2 columns.
     
  • Modified the FilePrint macro/DDE command to accept a printer name. This allows you to print to other than the default printer without displaying the standard Print dialog.
     
  • Added FilePrintMultiple macro/DDE command, which is equivalent to clicking the Multiple button on the Print dialog.
     
  • Modified FilePageSetup macro/DDE command to accept an optional paper size parameter.
     
  • Surface plots drawn with shaded bands of colors (as opposed to contour lines and waterfall plots) took an exceptionally long time to print and created huge print spool files for many (though not all) printer drivers. In this version these plots are drawn to a bitmap and the bitmap is then painted to the page, rather than drawing all graphics directly to the printer driver. Resulting print speed is considerably better than previous versions.
     
  • You can now control the color of the coordinate axes. Previous versions forced use of the "Window Text" color for displays and black for all other output devices. Added corresponding AxisColor macro/DDE command.
     
  • Added BarWidth macro/DDE command to control the width of bars in a bar chart.
     
  • Filenames of DPlot files specified in commandline operations are now internally prefixed with the full path to the file. This change is primarily important because of a change in version 1.9.8.3: If a filename was not specified in a FileSaveAs macro command then the path and filename of the existing plot was used, along with a default extension for the file format. Without this change, if you launched DPlot from a DOS window and specified a DPlot file w/o a path, then FileSaveAs without a filename would save the file to the DPlot folder, regardless of where the original DPlot file was stored.
     
  • If working with an old or newly-saved DPlot (.grf) file, the "Save As" dialog will now initially show the folder where the DPlot file is stored. In all previous versions the "Save As" dialog initially showed the folder last saved to.
     
  • Added date(year,month,day) function to menu commands that parse an equation (Y=f(X), for example). This function returns the Excel 1900 date system serial number for the input date. This is especially handy for shifting axis values relative to some date. For example if a plot's X values start at 0 and you want those values to instead be relative to some date, you can use Edit>Operate on X with "X+date(<year>,<month>,<day>)".
     
  • You can now specify unique number formats for secondary X and Y axes. Previous versions used the same number format as the primary axis. Thanks to Richard Swaim for the suggestion.
     
  • For the Operate on <X,Y,Z> commands on the Edit menu, a few extra steps are taken to avoid confusing results and/or a flood of grid lines. If 1) the transformation is only a function of the respective axis, e.g. with Operate on X and X=X*50+6 but not with X=X+Y, and 2) the transformation is applied to all curves on the plot, then manually-set extents and tick mark intervals on that axis are transformed as well. If the above two conditions are not both true or if an error occurs when applying the transform, then manual extents and tick marks are turned off. In all cases, zooms are removed.
     
  • For the file import plugin interface, added plugin_readfileex, which is identical to plugin_readfile with the addition of a character string argument containing optional settings (or whatever information a plugin author would like to pass to the function from DPlot). Added an optional "Options" argument to the FileOpen macro/DDE command to specify those options. See the Help file writeup for plugin_readfileex and FileOpen for more information.
     
  • For file import plugins, a feature that has been present for a while but undocumented: it is possible for a plugin to determine whether it was called as a result of a File>Open menu command as opposed to a FileOpen macro/DDE command, commandline operation, drag-and-drop, "Open With..." in Explorer, etc. In the latter cases plugin authors should in most cases use default options rather than presenting the user with an input dialog, or, alternatively, let the user decide whether to use default options for those operations. See the Bitmap to 3D file import plugin for an example. See the Help file description of the plugin_typecheck function for more information.
     
  • DPLOTLIB.DLL is now distributed with both __stdcall and __cdecl calling conventions. DPLOTLIB.DLL (as with all previous versions) uses __stdcall, DPLOTLIB_CC.DLL uses __cdecl. This change was made for users of languages for which it is not convenient to call __stdcall functions. For example, some FORTRAN compilers use a single commandline switch to specify the calling convention. This limitation makes it, at best, difficult to call functions in one library that uses __cdecl and another library that uses __stdcall. As always, DPLOTLIB.DLL and accompanying source examples in C, VB, and FORTRAN are distributed along with DPlot Jr and as a separate download.
     
  • Added Salford FORTRAN example to the DPLOTLIB distribution. Thanks to L. J. Farrugia, University of Glasgow for the assistance.
     
  • Added batch file to compile C examples using GNU C (gcc). C source files have been modified to work with Microsoft, Borland, LCC, and GCC compilers with no fuss.
     
  • VB.NET DPLOTLIB examples are now a bit more .NET-like thanks to the assistance of Tommy Engstrom.
     
  • Documentation for DPLOTLIB has been updated and is generally a bit more useful. Documentation is included with the distribution and may also be viewed online.
     
  • Bug fix: The Reorder curves menu command allowed you to shift the position of curves whose only purpose was to provide error bar amplitudes. This had no practical benefit and was confusing. These curves are now not included in the list and will not be shifted in the order.
     
  • Bug fix: If you erased a curve that provided error values for another curve, the curve with error bars kept error bars but the source of the amplitudes shifted down in the curve list, which was at best confusing. You are still allowed to erase error bar sources, but in this revsion when you do so, any curve that used this source has its error bars turned off.
     
  • Bug fix: The Call macro command gave unreliable results, primarily because the calling macro did not wait for the called macro to complete before processing any remaining commands. This version of the macro facility ensures that the calling macro waits for called macros to finish.
     
  • Bug fix: On 2D contour plots of random 3D points if negative scale factors were used on either the X or Y axis then tick marks and numbers along those axes were not drawn.
     
  • Bug fix: Time format selected with the Number Formats menu command was not saved to preference files.
     
  • Bug fix: Fixed number of decimal places setting was ignored for "PI Multiples" number format.
     
  • Bug fix: Bar chart formatting options on the Histogram input dialog were ignored.
     
  • Bug fix: Several operations that produced a new curve after operating on an existing curve (e.g. Edit>Smooth) always associated the new curve with the primary Y axis though the source curve might have been associated with the secondary Y axis.
     
  • Bug fix: Several input procedures that allowed entry of date and time values erroneously rounded up the date if the time was past noon. So if, for example, your X axis used Date and time number formatting, simply opening the Extents/Tick Marks/Size dialog with user-specified extents and clicking OK would increase an extent by 1 day if that value included a time later than noon. This error also existed in the Edit Data dialogs. Thanks to Richard Swaim for assisting with the problem.
     
  • Bug fix: Partially-filled un-antialiased symbols were not filled after the 1024'th data point on XY plots.
     
  • Bug fix: The "Multiple" feature on the Print dialog did not work well if you printed 3D data and XY plots on the same page. Clipping regions established by XY plots were not removed when the drawing was completed, so that subsequent plots that did not use clipping regions (3D plots do not) were not drawn.
     

29 January 2005
Version 1.9.8.3

  • Added Define Boundary command on the Options menu for 3D surface plots. This allows you to define concave exterior surface edges and holes within the surface. The new DPLOTLIB.DLL function DPlot_3DBorder allows you to specify this border from another program.
     
  • Point labels may now be added to 3D surface plots in addition to XY plots. See Label Points command on the Text menu. Added corresponding TextPointLabel3D macro/DDE command. Note: Currently limited to 2D representations of the plot.
     
  • Added support for inequality operators (<, >, and =) to commands that parse an equation (Y=f(X), etc.). These operators result in 1.0 if the test is true, 0.0 if not. The inequality operators have a lower precedence than any other operator and so the test should generally be surrounded by parentheses. (Example: 1+x<5*2 is parsed as (1+x)<(5*2), not 1+(x<5)*2.)
     
  • Added support for min(a,b) and max(a,b), and Excel-like conditional formulas "if(test,if_true,if_false)" to commands that parse an equation. Min and max return the minimum/maximum of two comma-separated values or expressions. The if function works very much like the Excel equivalent: "if x<5 then y=x^2, otherwise y=(10-x)^2" can be expressed as if(x<5,x^2,(10-x)^2).
     
  • Added floor and ceil functions to the function parser. These are equivalent to the C language functions of the same name: floor(x) returns the largest integer that is less than or equal to x; ceil(x) returns the smallest integer that is greater or equal to x.
     
  • Added right-click menues to change line and symbol styles on XY plots.
     
  • FileSaveAs macro/DDE command has been amended to use the existing filename of a plot if no filename is included in the command, or the plot title (text appearing in the title bar) if the plot has not previously been saved to disk. For example in previous versions FileSaveAs("Portable Network Graphics","") would save a file named .png in the DPlot folder regardless of how the plot was created, while this revision will save the file c:\my data\plot.grf as c:\my data\plot.png.
     
  • Added Cycle symbol colors checkbox to the Symbol/Line Styles dialog box. If checked, colors of symbols for the selected curve will cycle through the colors assigned to each curve on the plot. The number of colors cycled through will be the minimum of the number of curves on the plot and the size of the color palette for XY plots (currently 16 colors). The 1st and (N+1)th points will use color 1, the 2nd and (N+2)th points will use color 2, etc. Added equivalent SymbolCycleColors macro/DDE command. Thanks to Mason Guy for the suggestion.
     
  • Added the ability to specify up to 4 user-defined sieve sizes on grain size distribution plots. See the Grain Size Options command under Options>Linear/Log Scaling. Added corresponding GrainSizeFlagsEx and GrainSizeOther macro/DDE commands. Thanks to Tim Green for the suggestion.
     
  • Always auto-adjust scale factors on 3D plots (under Options>General) is now applied whenever you change the plot extents by zooming or specifying extents under Options>Extents/Tick marks/Size. In previous versions this setting was only applied when the plot was first created and when the data was edited.
     
  • The Excel Add-In's XYYY command has been made a bit more efficient (plots faster). In previous versions if you selected data to plot by clicking column headers, rather than dragging the mouse, Ctrl+Shift+End, etc., then the XYYY command examined all 65536 rows on the sheet for data values. This version is smarter about determining where the data ends. Thanks to Excel help book author Bernard Liengme for the assist.
     
  • Licensed version only: Bitmap-to-3D file import plugin had an arbitrary limit of 256 rows or columns in the surface plots that it produced. These limits have been removed.
     
  • Bug fix: Macro editor (dpmac.exe) did not shut down properly if you were single-stepping through a macro when you closed the editor by clicking the Close button in the title bar (as opposed to File>Exit). This led to a new instance of the macro editor every time you repeated this operation and eventual sluggish performance.
     
  • Bug fix: File type D mishandled reading times and date and time groups if the time did not include seconds.
     
  • Bug fix: New feature of automatically creating a plot title or legend entry from an equation caused the text to be terminated with an ASCII 0 when a text file (DPlot file, .CSV or tab-separated columns) was saved. This did not cause any problems with reading the file in DPlot but might have caused a problem for some text editors.
     
  • Bug fix: User-specified tick mark interval settings for the Z axis were not saved to preference files. If saved to the default preferences file default.set, this omission might have caused DPlot to crash when a new 3D plot was opened. This problem has been fixed at both ends: preference file is updated properly and DPlot checks against invalid settings for 3D plots.
     
  • Bug fix: Once you selected Scatter plot on the Open dialog for file type K, that setting became persistent regardless of whether that box was checked or not.
     
  • Bug fix: Constants did not work prperly with the Y=f(X,Y1,Y2,...) command. Specifically, constant A was overwritten with the value of Y1 if Y1 was used in the function, B by Y2 if used, etc.
     
  • Bug fix: Undo feature for surface plots of random 3D points has been hit-or-miss, apparently from the start. Undoing changes to the data might have caused a crash.
     
  • Bug fix: Gray scale palette on surface plots produced all black if the number of intervals used was > 224.
     

16 Jan 2005
Version 1.9.8

  • DPlot now examines input 3D points for a rectangular grid arrangement of points (either the entire data set or a significant portion of it) and uses a much simpler, significantly faster triangulation routine if found. This can make a dramatic difference in triangulation speed for large data sets, e.g. a few seconds as opposed to several minutes with a million or more data points.
     
  • For contour plots of random 3D points, traded calculation speed for memory by reducing the memory usage by 100 bytes per triangle (was formerly 112 bytes per triangle). For medium-sized data sets this change results in a small performance penalty, but for very large data sets (~1 million points and larger) this change will result in a significant drawing speed boost on the majority of systems (those with less than 1 Gb RAM).
     
  • DPlot now does a better (faster) job of handling zoomed 2D contour plots. You will most likely not notice a significant difference unless your data set contains several hundred thousand points or more.
     
  • For 3D plots the minimum, maximum, and average Z value is now displayed in the status bar. These are the values for the portion of the plot that is displayed rather than for the entire data set.
     
  • For 3D surface plots and scatter plots, slightly modified the behavior for view elevation angle of 90 degrees. With the azimuth also set to 90 degrees, the plot and axis label orientations are now very similar to a 2D top-down view: X axis at the bottom of the plot, Y axis labels along the left side of the plot. This change is more meaningful for scatter plots since DPlot does not provide a 2D option.
     
  • Added "Use actual displayed limits" checkbox to the Contour Options dialog. If checked, the lower and upper limits of the contour intervals will be adjusted to match the limits of the portion of the plot shown when you zoom in/out or force the plot extents by using the Extents/Tick Marks/Size command on the Options menu.
     
  • When reading data files for a 3D surface plot or scatter plot (file type K on the Select File Type dialog) you now have the same Pick Columns to Plot option available for XY plots. For example in a file containing 10 columns you can now read X, Y, and/or Z from any of columns 1-10. Also added a similar command line option /xcyczc.
     
  • Added Find best-fit plane command to the Generate menu for 3D surface plots. This command uses least squares technique to find the plane (Z=A*X + B*Y + C) that best matches the surface.
     
  • Added Subtract a plane command to the Generate menu for 3D surface plots.
     
  • Added Subtract surfaces command to the Generate menu for 3D surface plots. This command produces a new surface plot that is the result of subtracting the amplitudes of one surface from another.
     
  • Added Average surfaces command to the Generate menu for 3D surface plots. This command produces a new surface plot with the average amplitudes of two or more surfaces.
     
  • Changed the behavior associated with custom contour palettes for 3D plots. In previous versions if the number of specified contour intervals was less than the number of colors in the palette, the generated colors were produced from a smooth blend of colors between the first and last palette entries, ignoring all intermediate entries. In this version the generated colors are interpolated from the entire palette regardless of whether the number of intervals is less than, equal to, or more than the number of entries in the custom palette.
     
  • Pasting data from the clipboard into XY plots now works essentially the same as reading a muliple-column text file: clipboard text may contain columns of dates, times, date and time groups, and currencies. Other non-numeric columns will be ignored.
     
  • Added Switch independent variable command to the Generate menu for XY plots, and corresponding SwitchX macro/DDE command. This function allows you to substitute the amplitudes from one curve for the independent variable (X values) of all other curves in the document. Thanks to Bill Sieber at Aerojet for the suggestion.
     
  • For "Calendar date" number formatting on the X axis of XY plots, the Extents/Tick Marks/Size dialog will now include the time in the extents fields if the extents are less than 10 days and the fractional part of either extent is greater than 1 minute. In previous versions it was possible to cause DPlot to balk with a "High and low values cannot be equal" message simply by clicking OK with "Specify extents" checked.
     
  • Added mouse-activated option for point labels in XY plots. If set, the label is only drawn when the user's mouse cursor is over the corresponding data point. The label will not be drawn to printed plots or saved images.
     
  • FFT and playback now check for "microsec", "µsec", and "{\sm}sec" in the X axis label when attempting to determine the units of time in the input. Previous versions only checked for milliseconds (as opposed to seconds). For FFTs the units of time are only important in determining the correct units for the frequency scale in the FFT. Microseconds are also now an option on the Filter dialog and the corresponding EditFilter macro/DDE command.
     
  • Sort command on Edit menu for XY plots now also sorts data points with equal X values in increasing Y order.
     
  • Added Clip Y command on the Edit menu for XY plots. This is similar to Truncate X but works on a range in Y rather than X.
     
  • Y=f(X), Z=f(X,Y), and Y=f(X,Y1,Y2,...) menu commands now automatically generate legend entries (or plot title for 3D surface plots) from the equation used to generate the curve or surface.
     
  • Improved Help file index with regards to searching for macro/DDE commands.
     
  • Removed several remnants of DPlot's older single-precision data storage. Copy Data command on the Edit now preserves up to 12 significant figures rather than 7; FFT command now gives more precise results.
     
  • Licensed version only: Bitmap-to-3D file import plugin has been amended to work with a wide variety of image formats (GIF, JPG, TIF, PNG, TGA, etc.) and now works with any bit depth (previous versions were limited to 8 bits). For bit depths other than 8, the plugin converts the image internally to 8-bit grayscale with color index 0=black, index 255=white.
     
  • Licensed version only: Corrected a few problems with the file import plugin for Gould DAT files. Previous versions assumed Motorola byte-ordering for 16-bit data and also did not accommodate the larger file headers produced by the Accura 100 oscilloscope. Thanks to Dustin Houseman, USAATC for the assist.
     
  • Bug fix: Triangulation routine used for randomly-spaced 3D points exited without warning if memory allocation failed due to an 'Out of memory' condition. In practice this condition would only happen with very large data sets and little or no free disk space.
     
  • Bug fix: "Specify extents" when used with polar plots and saved to a DPlot file resulted in the plot being truncated with extents from 0 to 360 degrees (negative angles ignored, in other words) when the plot was reopened.
     
  • Bug fix: A fairly recent edition of allowing a single contour line on 3D plots led to a bug that caused DPlot to crash when plotting 3D data if a default settings file (DEFAULT.SET) had been saved. The fix to this bug also led to better handling of the number of contour intervals saved to a preferences file. In previous versions this value was regarded as absolute; a good interval was found based on the number of intervals and the low and high values in the data, and the specified number of intervals was used even if this resulted in the low or high interval being well outside the limits of the data. In this version, the number of intervals saved to a preference file is regarded as a guideline; the interval is determined as before but the number of intervals is adjusted up or down to more closely match the data.
     
  • Bug fix: On 3D plots with shaded bands if the Z extremes were far outside the limits of the color scale used, it was possible to cause a crash due to an integer overflow when computing colors to use.
     
  • Bug fix: FilePageSetup macro/DDE command's Orientation parameter has been broken in the last several releases.
     
  • Bug fix: DPLOTLIB.DLL's DPlot_AddData function did not work in all cases with XY plots if multiple Y axes were used. And the [XY()] and [XYXY()] commands resulted in an annoying flashing if multiple Y axes were used.
     

1 December 2004
Version 1.9.7.8

  • DPlot does a better job of eliminating white space between the Y axis titles and the axis numbers for all number formats, particularly those involving superscript codes (powers of 10, for example).
     
  • Gridline color is stored and retrieved correctly from preference files (File>Get/Save Preferences).
     
  • If you zoom in on a 2D view of 3D data and then switch to a 3D view, the zoomed extents are now used for the 3D view. In previous versions the 3D rendering ignored the zoom values.
     
  • Bug fix: Reading date/time groups in comma-separated values files was broken by a "fix" in version 1.9.7.5
     
  • Bug fix: "Date and time" number formatting did not work particularly well with the Extents/Tick Marks/Size command. Code to read a date/time sequence was too restrictive and often translated the input value to 0 if the expected format was not used.
     
  • Bug fix: Macro facility did not allow you to save an unformatted binary file within a ForFilesIn loop.
     

28 October 2004
Version 1.9.7.6

  • Bug fix: 3D scatter plots were broken in the previous update.
     
  • Legend on 3D plots is now drawn at a fixed distance from the right edge of the plot, rather than right-justified on the display, printed page, etc.
     

24 October 2004
Version 1.9.7.5

  • Added the ability to embed placeholders in title lines, axis labels, legend entries, and notations for data minima, maxima, mean, and standard deviation. For example "$YMAX" in a title line will be replaced with the maximum Y value for all data sets when the plot is drawn. For more information search the Help file for 'maxima'.
     
  • Another significant improvement was made to removing overlaying X,Y points from 3D data. This will be most noticeable with very large (>100,000 points) data sets.
     
  • Added an option for bar charts to display percentages of the total for ALL data sets. The default is to show percentages of the total for the data set of the labelled bar.
     
  • Using Edit mode or the Edit Data command on the Edit menu, dates on the X axis may be entered using M/d/yyyy format rather than as Excel serial date numbers.
     
  • Added PasteLink() macro/DDE command. This is equivalent to using the Paste Special menu command with the Link box checked. Improved behavior of linked data: in previous versions if you linked data from one DPlot plot to another plot DPlot might have become temporarily confused about which plot was associated with which document window.
     
  • Bug fix: DPlot sometimes failed to find the correct start line for data values in multiple-column ASCII text files if the data lines contained different numbers of leading spaces.
     

30 August 2004
Version 1.9.7.2

  • Starting with version 1.8.3.3, a very inefficient routine for removing overlaying X,Y points from random 3D data was used. For several thousand points this did not result in a significant delay, but for tens of thousands of points became very noticeable. For 100,000 or more points DPlot required a lot of patience.
     
  • Error bars now use the Symbol Frequency setting on the Symbol/Line Styles dialog to determine the frequency of error bars. Previous versions drew error bars at every data point.
     
  • Extended last version's new feature of allowing dates to be entered as M/d/yyyy rather than Excel serial dates to several dialogs.
     
  • Added a method to specify that type 11 files (3D, 3 column ASCII text) should be interpreted as 3D scatter plots rather than 3D surface plots. On the command line, use /f267 <filename> (rather than /f11 <filename>). In a macro or when included in a DPlot_Command call, use FileType(267).
     
  • Bug fix: FileType macro/DDE command was often ignored. In particular DPlot was prone to determining the file type itself, and overriding the FileType command.
     
  • Bug fix: Fixed a remnant of a bug addressed in the last release. If you somehow printed a document which had never been drawn to the display, typically by using the Multiple feature, DPlot crashed due to an uninitialized data problem. This error was fixed for files opened within DPlot, but was still broken for multiple files opened on the command line. The problem data is now initialized properly in all cases.
     

9 August 2004
Version 1.9.7.1

  • Added an option to draw grid lines above fill patterns, curves, and/or reference lines. See Options>Symbol/Line Styles. Added corresponding GridLinesOnTop macro/DDE command.
     
  • Added Degrees, Minutes and Degrees, Minutes, Seconds number formats.
     
  • This version is a bit more flexible with tick mark intervals on scales that use Calendar Date or Date and Time number formatting. Previous versions fixed the tick mark interval at 1/2 month or 1 month regardless of user-specified settings on the Extents/Tick Marks/Size dialog. This version allows you to set the tick mark interval to 1/2 month, 1 month, 2 months, 6 months, or 1 year.
     
  • User-specified extents on the Extents/Tick Marks/Size dialog for calendar dates are now quite a bit easier to enter. You can now use M/d/yyyy format rather than being forced to enter Excel serial dates (July 31, 2004 = 38199, for example).
     
  • User-specified tick mark intervals on the Extents/Tick Marks/Size dialog now include a unit selection when the corresponding axis uses Time, Date and Time, Calendar Date, Degrees, Minutes or Degrees, Minutes, Seconds number formatting. For example you may enter a tick mark interval in seconds, minutes, hours, days, months, or years for Date and Time formatting rather than being restricted to days.
     
  • Added an option for grain size distribution plots to use Udden-Wentworth size classification rather than AASHTO (American Association of State Highway Transportation Officials) scale. The Udden-Wentworth scale is typically used by geologists while the AASHTO scale is normally used in construction.
     
  • For polar plots, bar charts, and grain size distribution plots added a Make defaults option on the respective Options dialogs. This saves the current option settings to the preference file DEFAULT.SET, so that these options will be in effect when new plots are created. This will be particularly useful for those producing polar plots with angles in degrees rather than radians.
     
  • Added an option to the TextPointLabel macro/DDE command to specify label position as an offset in physical inches.
     
  • Bug fix: In previous versions memory for the first document was not properly freed when closing that document. This resulted in DPlot consuming more and more memory as you opened and closed documents and was particularly a problem if you worked with one (and only one) open document and plots consisting of millions of data points. Thanks to Eric Gross for help in finding the problem.
     
  • Bug fix: On plots containing special text formatting codes (subscripts, superscripts, color, etc.), fonts were not properly deleted on Windows 95, 98, and Me systems. This resulted in a drain on system resources and eventual program sluggishness and/or graphic problems if you ran DPlot long enough. Thanks to Scott Brilz for helping isolate the problem.
     
  • Bug fix: Several features that allowed you to pick coordinates off a plot with your mouse while a dialog box was open incorrectly determined that the mouse was outside the plot (beep) if DPlot was not maximized.
     
  • Bug fix: If you somehow printed a document which had never been drawn to the display (for example, opening multiple DPlot files with a single File>Open command with the document window maximized, then printing using the Multiple feature), DPlot crashed due to an uninitialized data problem. Thanks to Jürgen Metzger for help in isolating this problem.
     
  • Bug fix: File import plugins sometimes failed and caused a crash when appending data to existing plots and/or when reading multiple files.
     

17 July 2004
Version 1.9.7

  • Licensed version only: Added PNG (Portable Network Graphics), TIFF (Tagged Image File Format) and JPEG file export plugins. These plugins, as well as a replacement plugin for BMP files, all use the FreeImage DLL, a very nicely done toolkit for developers interested in supporting a variety of image formats.
     
  • Licensed version only: Added file import plugins for several digital recorders: Tektronix .WFM files, Gould Instrument Systems .DAT files, and Hi-Techniques Win600 .DAT files. These plugins are available to licensed users as an installation option.
     
  • Help features have been improved. In particular: Context-sensitive help for all dialog boxes has been brought up to date. Pressing F1 in all but the simplest dialogs brings up the applicable Help topic. Status bar descriptions of menu commands and tool buttons has been brought up to date. The How do I create the example plots? section of the Help file includes additional examples and the existing examples have been improved.
     
  • Function parser (used by Y=f(X), etc.) does a better job of syntax checking, particularly with regard to parentheses, and gives more meaningful error messages when an error is found. For example previous versions would accept Y=5(x+4) and produce Y=0. This version balks with "Syntax error: missing operator before open parenthesis."
     
  • Modified the Paste code so that it is a bit smarter about interpreting column headings. In previous versions if any heading contained a space or comma then it had to be surrounded by "quotation marks" to be interpreted correctly. This version checks the heading line for tab characters, and if found assumes that column headings are delimited by tabs. So tab-separated column headings may contain spaces and/or commas without being surrounded by quotation marks. See the Help file "How do I create the example plots" for EX02.GRF for an example of this improved feature.
     
  • The Number Formats dialog now includes predefined date and time formats (identical to Control Panel's predefined formats) that make selecting an appropriate format a bit easier. Thanks to Aaron Weiner for the suggestion.
     
  • Specify extents now works consistently on all 3D plots. In this release, contour lines that fall outside user-specified Z extents are not drawn. This might be useful if you want plots of several slices of your data that all use the same contour coloring scheme without being forced to go to the trouble of redefining colors for each slice.
     
  • The new (1.9.6.7) Find volume under surface command has been amended to show volume above and below the reference plane along with the sum and difference of those two volumes. Previous version displayed only the difference.
     
  • Generate mesh command now works with Z values on a rectangular grid as well as randomly-spaced points.
     
  • Added Label 0 degrees option for polar plots. By default, 0 degrees is not labelled and the maximum radius is labelled.
     
  • Improved the appearance of polar plots a bit. Previous versions tended to show small gaps in the circular grid lines if a thick pen was used.
     
  • For image file export plugins (e.g. "BMP Picture", "JPEG Picture"), DPlot will now prompt you for the desired image dimensions. Previous versions always used the current dimensions of the plot window. You may leave the width and/or height fields blank to use the window dimensions. Added macro/DDE command SetPluginImageDims to specify these dimensions before using a FileSaveAs command.
     
  • The number of available macro shortcut keys has been roughly doubled. Also the macro editor now properly takes into account the presence of the Windows taskbar. Previous versions extended the total height of the screen.
     
  • The "Number of symbols used" entry on the Legend dialog may now be set to 0.
     
  • Added Distance from command on the Info menu. This allows you to click and drag to find the distance between two points on an XY plot.
     
  • Cosmetic changes made to the toolbar. Also provided an XP-like » button to display a dropdown menu for tools that do not fit in the window.
     
  • Directory macro command is now more consistent and works correctly with FileSaveAs commands. This command is also no longer restricted to use inside a macro; it may be used in a DPlot_Command call using DPLOTLIB.DLL.
     
  • File>Save As... command now skips the File Format dialog and uses the more standard Save dialog in which you can select the file format using the "Save as type" control. All Open and Save dialogs now have a more consistent appearance, are resizable (on Windows 2000 and XP) and display the standard "places" bar on Windows 2000 and XP.
     
  • TickInterval macro/DDE command has been amended to allow the angular tick mark interval for polar plots to be specified in degrees rather than the default radians.
     
  • Bug fix: Crosshairs tended to leave bits and pieces behind near the edges of document windows.
     
  • Bug fix: The Delete triangles command for contour plots gave the perception that DPlot had locked up if you switched to another task and back to DPlot. The command might also have been confusing to users who had hidden DPlot's status bar, since the only instructions appeared there. This version uses a dialog box instead, and restores DPlot correctly if/when you switch tasks.
     
  • Bug fix: List Peaks in Box was prone to producing nonsense answers unless you moved the mouse slightly before dragging.
     
  • Bug fix: Text boxes that expect floating point numbers for input prevented you from using Ctrl+C, Ctrl+V, and Ctrl+X to copy, paste, and cut, respectively.
     
  • Bug fix: The color key for 3D scatter plots was not displayed unless a legend was also displayed, regardless of whether Draw Color Key was checked.
     
  • Bug fix: "Symbol sizes in Z units" did not work well for 3D scatter plots.
     
  • Bug fix: Y=Poly(Y) command (applies a polynomial transformation to a curve) was broken.
     
  • Bug fix: It was possible to crash DPlot by specifying a nonsense angular tick mark interval (e.g. > 360 degrees) for polar plots.
     
  • Added DPlot_ZFromXY function to DPLOTLIB. This function allows you to get an interpolated Z value from a surface plot, given X and Y. See ctest2 C demo and/or btest2 VB demo in the DPLOTLIB and/or DPlot Jr distributions.
     

27 June 2004
Version 1.9.6.7

  • FileSaveAs macro/DDE command may now use relative paths for the output filename. Paths will always be relative to the path where dplot.exe (or dplotjr.exe) is installed.
     
  • Added a command line option to specify which columns to read from a multiple-column ASCII file for XY plots. See "Command line options" in the Help file.
     
  • Added Find volume under surface command to the Generate menu for 3D surface plots.
     
  • Added methods for retrieving the maximum number of curves and maximum number of points per curve for a given document. This feature is available via the DPlot_Request function of DPLOTLIB, a LinkRequest in Visual Basic, and/or a XTYP_REQUEST DDE transaction in any other language. Request items are "MaxCurves" and "MaxPoints"
     
  • Bug fix: A couple of problems with polar plots have been fixed. Using "Specify Extents" to clip the minimum amplitudes on a polar plot usually resulted in one extra spurious line segment. And "Specify Extents" caused all points with negative angles to be clipped.
     
  • DPLOTLIB distribution (also included with DPlot Jr) now includes functioning Visual Basic .NET example programs with source code.
     

20 June 2004

The Excel Add-In had an arbitrary limit of 20 curves. Attempting to send more than 20 data sets to DPlot via the Add-In resulted in a "subscript out of range" error. This update has the same limit as DPlot itself: 100 curves. If you have already downloaded DPlot or DPlot Jr 1.9.6.6 then you can download the much smaller Add-In setup program to correct the problem: http://www.dplot.com/excel/addinstall.exe. Close Excel before running the installation.
 

20 June 2004
Version 1.9.6.6

  • Bug fix: Programmatically it was possible to fool DPlot into attempting to save a metafile and/or copy a metafile to the clipboard with 3D contour plots using shaded color bands. Metafiles are extremely inefficient with these types of plot (think hundreds of megabytes), so that feature has always been disabled for those plots.
     
  • Bug fix: One more problem associated with using "Specify Extents" to clip a 3D plot in the Z direction has been fixed. With 3D points on a rectangular grid, if the actual data extents were several orders of magnitude larger than the specified extents then the plot would take a very long time to draw.
     

18 June 2004
Version 1.9.6.5

  • Added "(Hidden)" suffixes for hidden curves in most of the "Select a curve" list boxes to help avoid a bit of confusion.
     
  • The "Always auto-adjust scale factors on 3D plots" feature now preserves the sign of previous scale factors when the data is amended and/or a link source is updated. In other words if a scale factor was previously negative, the new scale factor will also be negative when it is recalculated after a change to the data.
     
  • Added ContourLegendFrequency macro/DDE command.
     
  • 2D contour plots drawn with shaded bands (rather than contour lines) will now take the Z extents specified with Extents/Tick Marks/Size into account. Areas outside the specified extents are not drawn.
     
  • Line widths, symbol sizes, and other plot attributes are now scaled to give the same appearance regardless of plot size. For example, symbols on a tiled window will have roughly the same relative size as symbols on the same plot in a maximized window. In previous versions this scaling was done inconsistently.
     
  • Polar plots may now include negative angles.
     
  • Bug fix: Zoom did not work properly on 2D plots of 3D data when negative scale factors were used for X and/or Y. (Negative scale factors can be used to reverse the normal drawing direction. For example, you might set the Y scale factor to -1 if Y represents depth from the surface).
     
  • Bug fix: Erasing a curve did not properly shift the "hidden" properties of all curves following the erased curve. For example if curve #2 was hidden and you deleted it, curve #3 (now curve #2) would then be hidden.
     
  • Bug fix: The recent change forcing vertical lines to be drawn vertical on 3D plots allowed small roundoff errors at azimuths of 90 and 270 degrees to, in effect, draw a plan view (looking straight down) of the surface regardless of elevation angle.
     
  • Bug fix: Specify Columns to Plot dialog omitted the last digit from entries in the last column if the columns were space-separated (rather than comma- or tab-separated). This was a visual problem only; the file was interpreted correctly.
     
  • Bug fix: With vertical labels on the Y axis of XY plots, the last label may have been omitted from metafile output, particularly if the plot did not have a title line (which pushed the upper extent of the metafile up).
     
  • Bug fix: It was possible to unintentionally select a hidden curve with Edit mode.
     
  • Bug fix: If you set the number of contour intervals to 1 on a 2D contour plot with contour lines (rather than shades), using either the Contour Options dialog or the ContourLevels macro/DDE command, no lines were drawn. This was a side effect of a change in version 1.9 that allows you to define contour levels as wrapping from the low to high value by setting the same colors for the low and high ends of the scale.
     
  • Bug fix: Standard metafiles (as opposed to enhanced metafiles) of 2D contour line plots copied to the clipboard had random character heights for the axis labels.
     
  • Bug fix: The recent change of allowing you to clip a 3D plot in the Z direction by checking "Specify Extents" introduced a problem with drawing grid lines on the plot. Drawing grid lines might have taken an exceptionally long time if the extents were several orders of magnitude smaller than the actual data extents.
     
  • XYZSurface and XYZScatter functions of the Excel Add-In have been modified to check the number of used rows in the selection. Previous versions assumed that all rows within the selection contained data, which resulted in sending 65,536 data points to DPlot when you selected a column by clicking on the column heading rather than dragging the cursor over the rows actually populated with data. Those excess data points were all set to 0,0,0. This did not cause any serious problems but of course slowed the entire process down markedly.
     

28 May 2004
Version 1.9.6.3

  • Added the ability to change the orientation of numbers along the axes to 45 degrees or vertical. See Options>Number Formats. These settings are applied to most XY plots, 2D views of 3D data, and the amplitude scale of 1D plots. Added corresponding LabelDirection macro/DDE command.
     
  • For 3D plots, made a minor change to the 3D projection that forces vertical lines to remain vertical. In previous versions vertical lines were usually drawn at a very small angle from vertical.
     
  • User-specified extents on all plots of 3D points are now fully functional. Previous versions ignored the extents for some types of plots.
     
  • For logarithmic scales on XY plots you may now specify extents that are not 1, 2, or 5 times a power of 10. The actual extents will be rounded to the nearest number with 2 significant figures that includes the specified extents. Default extents are unchanged and will always be 1, 2, or 5 times a power of 10.
     
  • Added Minor tick marks option to the Log Scale Tick Labels menu command, which is a bit more important given the above change.
     
  • Symbol frequency setting on the Symbol/Line Styles dialog for XY plots is now an individual setting for each curve, rather than being applied to all curves. Changed the SymbolFrequency macro/DDE command to take this new ability into account.
     
  • Negative amplitudes are now allowed on polar plots. If all amplitudes are > 0, DPlot still forces the center of the plot to be at radius = 0, unless you change the extents with the Extents/Tick Marks/Size command.
     
  • List Peaks within a Range menu command now displays the same mean, standard deviation, and standard error report given by List Peaks.
     
  • Recent addition of specifying a fixed number of decimal places on axis labels is now applied to scientific notation and "powers of 10" number formats as well as the default number format. Both of these number formats now display more significant digits when warranted; previous versions displayed no more than 5 digits.
     
  • Added DateFormat and TimeFormat macro/DDE commands to control the display of axis labels using Calendar date, Date and time, or Time number formats.
     
  • Default plot extents and tick mark interval for Calendar date and Date and time number formats are more sensible in this version. Previous versions used the same scheme as the default number format when the plot extents were less than 1 day. This very rarely resulted in limits that were whole hours, for example.
     
  • Added Select All and Deselect All buttons to the Hide Curves dialog for XY plots.
     
  • Plot extents were not recalculated after using the Delete Points in Box menu command.
     
  • User-specified tick mark intervals were sometimes saved to DPlot files with an insufficient number of significant figures, particularly when working with a date scale with tick marks at some multiple of hours or minutes rather than days.
     
  • Edit mode can now be used to find the distance between two data points on an XY plot. Right-click on a second point on the plot to activate this feature.
     
  • Bug fix: An error in updating the settings file dplot.ini upon exit might have caused DPlot, DPlot Jr, and/or DPlot Viewer to crash on older Windows versions, in particular Windows 98 and Windows Me. This error was introduced in version 1.9.5.3.
     
  • Bug fix: DPlot crashed under some circumstances when the number of tick mark intervals was set to 1.
     
  • Bug fix: ManualScale macro/DDE command did not work properly for 3D scatter plots.
     
  • Bug fix: Plot extents set with Extents/Tick Marks/Size for 3D plots were not properly restored from a DPlot file.
     
  • Bug fix: Plot extents established with Get Preferences (rather than Extents/Tick Marks/Size) for XY plots were not saved properly to DPlot files.
     
  • Bug fix: New Invert X and Invert Y features on the Extents/Tick Marks/Size dialog were saved to DPlot files improperly and caused an error message when the file was reopened.
     
  • Bug fix: Operate on X failed to reset a flag indicating whether a curve had a constant spacing along the X axis. So if you used an operation that resulted in a curve having unequal spacing in X (e.g. X=1/X) when it previously did have a constant spacing and you subsequently saved the plot as a DPlot file, DPlot would erroneously save the fictitious spacing and the Y values only, resulting in a nonsense plot when you reopened the file. Thanks to Jim Drake for pointing out the problem.
     
  • Amended the plugin interface to allow double-precision data on both input and output arrays. This change will not affect any old plugins, though new plugins that take advantage of this feature will require the current version of DPlot.
     
  • Added double-precision versions of DPlot_Plot, DPlot_PlotToRect, DPlot_PlotBitmap, and DPlot_AddData to DPLOTLIB.DLL. Excel Add-In now uses the double-precision version of DPlot_Plot. For many users the most obvious advantage of this change is that date/time entries can now be sent via the Excel Add-In and the precision of the time value will be preserved (down to fractional microseconds). In previous versions date/time entries had a resolution of roughly 3 minutes.
     
  • DPlot_Start function in DPLOTLIB.DLL (used by the Excel Add-In and all DPLOTLIB example programs) will now wait up to 5 seconds after successfully launching DPlot for an input idle before returning. This change was necessary for older systems, in particular those running Windows 98, but should not result in any performance penalty for other systems.
     
  • Added DPlot_GetVersion function to DPLOTLIB.DLL. This function returns the version number of DPlot (or DPlot Jr) that will be launched by DPlot_Start or any other DPLOTLIB function. The return value of the function indicates whether the full version of DPlot or DPlot Jr will be used.
     

7 May 2004
Version 1.9.5.4

  • Improved efficiency of the Delete Thin Triangles command for 3D surface plots. This command will now run much faster with large data sets.
     
  • Amended TickInterval and NumTicks menu/DDE commands to include support for the Z axis on 3D plots.
     
  • Bug fix: There was a potentially DPlot-crashing bug associated with the recent change of allowing multiple-line title lines and axis labels. This would only occur with metafiles of contour plots, and on all test systems was only a serious problem when running one of the Visual Basic demo programs.
     
  • Bug fix: Recalculate extents of XY plots after hiding/unhiding curves was broken by the last revision's changes to the Hide curves command.
     

2 May 2004
Version 1.9.5.3

  • You can produce an XY plot from a 3D surface plot that is the intersection of a vertical plane with the 3D surface. See Generate>XY Plot from 3D Surface and/or the corresponding XYZ_to_XY menu/DDE command.
     
  • User-specified extents on 3D plots of random 3D points and 3D scatter plots may now be used to view a subset of the data. In previous versions user-specified extents could only be used to "zoom out" on 3D plots. Triangles (or data points on scatter plots) that are not completely inside those extents will not be drawn.
     
  • Removed Random spike removal from the Filter command for XY plots and made it a more flexible standalone menu command.
     
  • Added Delete Points in Box command to Edit menu. This command allows you to define a box with your mouse cursor, inside of which all visible data points on XY plots will be deleted.
     
  • DPlot now does a better job of drawing grid lines on 3D plots of gridded Z values. Previous versions had a few problems with drawing order and roundoff errors, causing gaps in grid lines.
     
  • Title lines and axis labels may now use multiple lines. You can add a line break to these entries by embedding a "\n" sequence (the actual characters \n, not a linefeed character) in the string.
     
  • Added an option to the Symbol/Line Styles dialog to size symbols in Y units (Z units on 3D scatter plots) rather than 1000th's of inches. If checked, symbols will be resized when you zoom in or out or change the plot extents so that they are proportionately the same size relative to the amplitudes of the plot. Added corresponding SymbolSizeUnits macro/DDE command.
     
  • Added Reference lines menu command and corresponding RefLine and DeleteRefLine macro/DDE commands. This allows you to quickly add horizontal or vertical lines to XY plots at a user-specified X or Y value without going to the trouble of creating a new "curve".
     
  • Changed Hide all curves but... command on the View menu to Hide curves and made it obvious which curves are already hidden by including checkmarks in the curve list.
     
  • On XY plots, you may now have 0 data values and still use a log scale. These points will be ignored, much as points outside the limits using the Amplitude Limits command are ignored: If point N-1 is positive, point N is 0, and point N+1 is positive, you will not get a line segment drawn between point N-1 and N+1.
     
  • DPlot, DPlot Jr, and DPlot Viewer are now compressed using ASPack. This results in a moderately smaller download size and a much smaller installed executable (for example, dplot.exe goes from 3255Kb to 660Kb).
     
  • Bug fix: When reading ASCII text files containing multiple data sets of x,y,z points for a 3D scatter plot, DPlot crashed if the file was terminated with two or more blank lines.
     
  • Bug fix: Choosing to display a plot's filename by use of the Print Caption menu command or ShowCaption macro/DDE command was not properly saved to a DPlot file.
     
  • Bug fix: With logarithmic scales, panning a zoomed plot by use of the mouse will pan the nearest number of log cycles. This is by design. However, if you drag less than 1/2 log cycle then the arrow associated with dragging remained on the plot.
     
  • Bug fix: Roundoff error might have caused placement of coordinate axes in XY and 1D plots to be off by 1 pixel.
     
  • Bug fix: Move up and Move down legend right-click menu items, Reorder Curves menu command and ReorderCurves macro/DDE command might have caused a crash if the plot had more than 16 curves.
     
  • Bug fix: GetPreferences macro/DDE command failed to update the plot.
     
  • Bug fix: DPlot Jr's File Format dialog used by the Save As... command has been fouled up for several versions, having not kept up with the full version's inclusion of Tab-separated values as an output option.
     
  • Bug fix: Previous versions of the Excel Add-In used Integer data types where Long should have been used. The end result was that you were limited to plotting a total of 32767 data points, and you would get an Overflow error in Excel when attempting to plot more points. This has been corrected; you can now plot an arbitrarily large number of points, subject to Excel's limitation of 64K rows.
     
  • Amended Excel Add-In to include support for Excel's Percent formatting.
     

12 April 2004
Version 1.9.4.3

  • Bah... corrected a bug introduced in the last release. The new Invert X and Invert Y features broke the scaling on multiple Y axes.
     
  • You can now use your mouse to pick coordinates in edit mode. In addition, using the mouse to pick X and/or Y values from an XY plot now uses appropriate rounding.
     

10 April 2004
Version 1.9.4.2

  • Added support for up to 10 constants in the equation-parsing routines (Y=f(X), etc.)
     
  • Added Invert X and Invert Y checkboxes to the Extents/Tick Marks/Size dialog box for XY plots, and added an equivalent InvertAxes menu/DDE command. This feature allows you to invert the normal scaling of the axes without manually specifying the axis extents.
     
  • Added AxisType menu/DDE command, which is equivalent to the Grid Lines or Box selections on the Options menu for XY plots.
     
  • Edit mode (click on a point to edit the coordinates and/or add a label) is now much more functional for XY plots. Changes are reflected in the plot automatically rather than after you click OK. Also added Insert, Next, and Previous buttons in addition to Delete.
     
  • Tick marks with Axes Only or Box Around Plot are now drawn using the same pen width used for grid lines.
     
  • Bug fix: Error bar information was not correctly restored from a saved DPlot file unless the data values happened to be evenly spaced in X.
     
  • Bug fix: FilePrint(1) menu/DDE command was broken (the "1" is meant to open the Print dialog, where you can select a printer/change printer settings before printing. FilePrint(0) (equivalent to FilePrint()), which prints to the default printer using the current printer settings, worked fine.)
     
  • Bug fix: Example DPLOTLIB source code for Absoft FORTRAN resulted in "unresolved external" errors with the linker due to Absoft's default method for passing character string arguments.
     

1 April 2004
Version 1.9.3.8

  • Bug fix: Recent change to the List Peaks menu command to display additional information might have caused memory problems seemingly unrelated to this command. In particular, saving a file after using List Peaks might have caused DPlot to crash.
     

30 March 2004
Version 1.9.3.7

  • Bug fix: Plots created with [XY()] or [XYXY()] DDE commands and saved as DPlot files were under some circumstances misjudged to have a constant interval in X (which affects how the data is stored in the DPlot file). Thanks to Christophe Boucher for his help in tracking down this problem.
     
  • Added DeleteLabel macro/DDE command to delete data point labels created with a TextPointLabel command or Label Points menu command.
     
  • List Peaks menu command now displays mean, standard deviation, and standard error values for each curve (along with the minimum and maximum amplitudes).
     
  • Fixed a problem with the Excel Add-In that caused columns containing blank cells and plotted with XYYY to produce nonsense plots.
     
  • The installation for the Excel Add-In is now a bit more forgiving if it cannot find EXCEL.EXE. This was particularly a problem with users who had Excel installed but did not have Excel set as the default application to use for .xls files.
     

26 March 2004
Version 1.9.3.4

  • You may now pan on zoomed XY plots by clicking and dragging in addition to using the arrow keys.
     
  • Ten zoom levels are now maintained. Previous versions kept track of only 4.
     
  • Bug fix: Recent change of adding support for data point labels on polar plots caused a problem with other plot types - if you used $X in the label to display the X coordinate of a point, the label was actually mod(X,360).
     
  • FileSaveAs macro/DDE command did not append a default extension if no extension was supplied. It also failed to update the document caption when saving DPlot files.
     

10 March 2004
Version 1.9.3.2 update

There were several problems with the installation of the DPlot Interface Add-In for Microsoft Excel, namely that it did not work properly on Windows Me or with foreign-language versions of Excel. And it was impossible to install the Add-In on Excel 97 unless macros were enabled. These problems have been corrected in both the evaluation and licensed versions. If you have already installed DPlot 1.9.3.2 and the above applies to you, you can download this much smaller (95Kb) update. Save addinstall.exe to any folder on your hard disk and run it to install the Add-In.

6 March 2004
Version 1.9.3.2

  • Added Find Intersections command on the Info menu for XY plots, and corresponding macro/DDE command FindIntersections. This command finds all intersections between 2 curves and optionally adds data points at those intersections and labels those points.
     
  • Bug fix: A bug in the last several versions results in incorrect placement of 2D contour plots saved or copied to the Clipboard as metafiles.
     
  • Corrected faulty advice in the setup workbook for the Excel Add-In on Excel 97; it is not possible to load the Add-In on Excel 97 or earlier versions without enabling macros.
     
  • Made a couple of small adjustments to the way a box is drawn around an XY plot. In previous versions the box was drawn completely inside the extents of the plot, which tended to obscure portions of curves in the corners and may have given the impression of faulty scaling. The problem was particularly noticeable in metafiles. The box is now drawn with the longitudinal axis of each line segment at the respective plot extent.
     

1 March 2004
Version 1.9.3.1

  • Added an optional Microsoft Excel Add-In module to the distribution. If you frequently plot data from Excel you should find this feature a big improvement over copying and pasting.
     
  • Added Percent number format.
     
  • Added the ability to specify the number of decimal places for the default number format (also used in new Percent format).
     
  • Bug fix: There were a couple of problems associated with the recent ability to read times (along with dates and currencies) from text files. Fractional seconds were discarded, and DPlot incorrectly decided that column types didn't match from one line to the next if the time values in one line were not in the exact same character position as the time values in the previous line.
     
  • Bug fix: Z axis label on 3D plots used the font for the Y axis.
     
  • Bug fix: Equation parser caused DPlot to crash in some circumstances when the equation contained extraneous spaces. In particular 'X+ .2' failed, while 'X+.2' or 'X+ 0.2' worked as expected.
     
  • Bug fix: Depending on the order of operations, it was possible to save an XY plot with multiple independent Y axes that you've zoomed in on with nonsense zoom window values for the independent Y axis. Reading that file would then cause DPlot to crash.
     
  • Bug fix: Recent improvements to the performance of antialiased symbols did not work on Windows 95 or 98.
     
  • Bug fix: If a macro resulted in DPlot crashing, the macro facility was left running in an endless loop with a tendency to hog the processor. Though the goal is of course for no macros to cause DPlot to crash, this version of the macro facility will gracefully exit if it finds that DPlot is no longer running.
     

22 February 2004
Version 1.9.3

  • Several aspects of working with polar plots were either confusing or did not work properly. Thanks to Ray Delaforce for many of the suggestions:
    • Selecting data points with the mouse in Edit Mode did not work particularly well with polar plots, and not at all for angles in radians rather than degrees.
       
    • Setting the angular tick mark interval on polar plots did not work properly, and it also wasn't clear whether the input should be in degrees or radians.
       
    • Specify extents on the Extents/Tick Marks/Size dialog isn't appropriate for the angular dimension, and in any case produced strange results. These controls are now disabled and hidden, with the extents of course fixed at 0-360 degrees.
       
    • Scan data inappropriately limited you to scanning a (in some cases) small subset of your data.
       
    • You can now zoom in on polar plots.
       
    • In previous versions if you set the radial extents to a value smaller than the maximum radius, the plot was not clipped correctly. This has been fixed (also applies to zoom).
       
  • Threw out Dense grid lines menu command in favor of more general settings under the Extents/Tick marks/Size command. In previous versions minor grid lines were either on or off, and if on DPlot decided on the interval. You may now specify the number of minor divisions on both axes. These settings are also applied to tick marks as well as grid lines (previously only grid lines were affected). If you have previously saved a DPlot file with the Dense grid lines option checked, the number of intermediate levels on both the X and Y axes will be set to 4. You can quickly change this setting with the new controls on the Extents/Tick marks/Size dialog.
     
  • Added Number Formats command for all 3D plots.
     
  • For Powers of 10 number formatting on log scales, if Log Scale Tick Labels is set to Powers of 10 only, then the leading "1x" is omitted.
     
  • Relaxed one requirement for bar charts: In previous versions, bar charts required the same constant spacing in X for all data sets. In this version, if only one data set is used then the X values can have an arbitrary spacing. The same requirement is still applied if multiple data sets are used. Also added a bar chart option to draw bars from the given X value to the next X, which is only meaningful in the case of non-constant spacing.
     
  • Added ErrorBar, ErrorBarPenWidth, ErrorBarWidth, and LegendShow macro/DDE commands.
     
  • Filled areas created with Fill between curves may now include a text entry that is placed in the legend. Amended FillBetween macro/DDE command to account for this new ability.
     
  • Added a new General option to recalculate the plot extents after hiding a curve or making a previously hidden curve visible, and ignoring hidden curves in the determination of the extents. By default the plot extents are left unchanged after hiding a curve.
     
  • FileSaveAs macro/DDE command now accepts replaceable parameters in the filename. For example, in the "filename" c:\temp\|TITLE1|.dat, |TITLE1| will be replaced with the first title line in the plot. See the description of the FileSaveAs command in the Help file for more information.
     
  • Significantly improved the performance of anti-aliased symbols, 10x or more depending on the number of identical symbols on the plot.
     
  • Added a Delete button to the Insert Link dialog to help do a bit of housekeeping with the Recently used links list.
     
  • Fixed a bug that caused DPlot to crash when reading file type B if the file contained more than one data set and the data arrays were not large enough to accomodate the new data.
     
  • Fixed a bug with 3D scatter plots that sometimes caused symbols to be drawn in black rather than the correct color when multiple data sets were plotted.
     
  • Fixed a problem with reading multiple-column ASCII files (file type D). In recent versions DPlot balked at blank, quote-delimited columns (two successive quotation marks). It also had trouble parsing quote-delimited dates if one or more spaces were included immediately after the opening quotation mark.
     
  • Filled areas created with Fill between curves were not clipped properly in metafiles after zooming in or setting the plot extents such that a portion of the fill area extended outside the plot box.
     
  • Corrected a problem with automatically-generated window captions (produced by an FFT, for example). The first FFT would result in a window caption of 'FFT', the second (properly) in 'FFT1', but then the third and all subsequent FFT's would also use 'FFT1'.
     

4 February 2004
Version 1.9.2.8

  • Added selections to the Units dialog for tripartite grids to make it quite a bit easier to plot the period of an oscillation (rather than the frequency) on the X axis. This could be accomplished in previous versions only by using user-defined constants. Thanks to Thomas Rockaway for the suggestion.
     
  • Fixed a problem with reading multiple-column ASCII files (type D on the Select File Type dialog). In the last few revisions, DPlot balked at blank lines in the header.
     
  • Fixed a bug in text output functions. Tabs in notes (or any other text) that contained special control characters (subscript, superscript, etc.) were in effect ignored.
     

30 January 2004
Version 1.9.2.7

  • A semi-random problem caused point labels on polar charts to point to the wrong location.
     

29 January 2004
Version 1.9.2.6

  • One more problem associated with the switch from single- to double-precision data: Waterfall plots were drawn with a semi-random base plane. Thanks to Gunnar Franke for pointing out the problem.
     
  • Selecting Calendar date or Date/time number formatting with values greater than the maximum magnitude of a 32-bit integer (in particular, numbers in the form YYYYMMDDHHMM), caused DPlot to crash. This same action now displays a message box with, in the case of the X axis, a reminder to use the YYYYMMDDHHMM to Serial command if appropriate.
     
  • Zooming out with data processing mode turned on sometimes gave incorrect results or caused DPlot to crash.
     
  • DPlot files saved with data processing mode on did not properly restore data processing mode when opened from Explorer (as opposed to the Open command within DPlot). Specifically, pressure and acceleration records did not cause DPlot to automatically generate integrated impulse or velocity and displacement records.
     
  • DPlot failed to correctly interpret multiple column data files that contained fewer than 20 lines of data and included one of more non-data lines after the data.
     
  • Licensed version only: Raw Data file import plugin has been amended to read (if present) a short header containing the number of data sets and the sampling rate for the file. You may now also enter a different default extension for these files; files with this extension will be opened by the plugin when dropped onto DPlot, and you can also associate this extension with DPlot so that double-clicking on a file with this extension in Explorer will open the file with DPlot. Thanks to Chris Rouleau for all of the suggestions.
     

19 January 2004
Version 1.9.2.2

  • Bug fix: One more (hopefully the last) leftover problem associated with switching from single- to double-precision data. The Edit Data command contained a few steps that resulted in translating data from double- to single- and back to double-precision, possibly resulting in the loss of significant figures, particularly when dealing with YYYYMMDDHHMM date/time values.
     
  • Polar plots: 1) Radial axis labels are drawn along the 0 degree radius. Previously these labels were always drawn along a horizontal line extending to the right from the center of the plot, regardless of whether "0 degrees at top of plot" was checked. 2) Added an option to center radial axis labels on the associated radius. By default these labels are drawn below or to the left of the radius.
     

17 January 2004
Version 1.9.2

  • Added Redo command (compliment of Undo) and Redo toolbar button.
     
  • Added user preferences for time format on the Number Formats dialog. Previous versions of DPlot always used the time format specified with Windows' Control Panel International (Regional Settings on some versions) applet.
     
  • Added a new line style for XY plots.
     
  • Added a new Date and Time number format, which differs from Calendar Date only in that the time value will always be displayed (if the time format string isn't blank), while Calendar Date displays the time only under certain circumstances, mostly to do with the granularity of the data.
     
  • Added YYYYMMDDHHMM to Serial... command on the Edit menu for XY plots. You may now read date/time groups in the form YYYYMMDDHHMM (for example January 19, 2003 5:25 PM would be input as 200301191725). For DPlot to do anything particularly useful with these numbers requires that they be translated to the Excel 1900 date system, otherwise large gaps would exist between one hour and the next, one month and the next, etc. The YYYYMMDDHHMM to Serial... translates input X values to the Excel 1900 date system, automatically turns on the new Date and Time number format for the X axis, and adjusts the time format setting dependent on the granularity of the input values.
     
  • Added Hexadecimal number formatting. You have a choice of 1-, 2-, or 4-byte output, as well as a choice of prefixes.
     
  • Minor change to Grain Size Distribution plots now only draws the descriptive labels (Cobbles, Gravel, etc.) that fit within the extents of the plot.
     
  • Added an input for the bar width on bar charts/histograms. By default in previous versions, bars butted up against each other (100% width). Default width is now 100% for generated histograms and 75% for all other bar charts, and may be controlled with Options>Linear/Log Scaling>Bar Chart Options.
     
  • It is now possible to have bar charts for "curves" consisting of a single point (a single bar) per curve.
     
  • Added unit selections for Acceleration plots in Data Processing mode.
     
  • Fill Between Curves functionality has been extended to allow you to fill the area between a curve and the X axis, or a curve and a horizontal line with a specified constant Y value. In the latter case, you may also specify different colors for the areas above and below the reference line. For programmers, see the updated description of the FillBetween command. The background of custom fill patterns is now consistent with the pre-defined patterns: the background is transparent.
     
  • Axes at 0 tick marks, labels, and line(s) are no longer obscured by curves or fills between curves.
     
  • Added an option to turn the radial axis labels on polar plots 90 degrees.
     

Bugs

  • Cancel button on Y=f(X,Y1,Y2,...) dialog... didn't cancel.
     
  • All 1.9+ versions with 2D contour plots that use "Specify size" had the drawing scale fouled up. This bug was introduced when adding the ability to use negative scale factors.
     
  • Fixed a visual bug on the Number Formats dialog that may or may not have shown up on your system, mostly dependent on your screen resolution.
     
  • Move/copy curves command did not flag the target plot as changed, or the source plot as changed in the case of a Move (rather than Copy). The result was that you would not be prompted to save these documents when closing them.
     
  • Polar plots with angular measurements in degrees that had clockwise angles rather than the default counterclockwise were scaled incorrectly.
     
  • Radial axis labels on polar plots sometimes used the incorrect font.
     
Licensed version only:
  • The BMP Picture file export plugin now does a much better job of preserving all colors in the picture. In previous versions, colors set with text formatting commands and colors associated with anti-aliasing symbols (as opposed to colors set explicitly in the color palette) may not have been preserved in the run-length-encoded 256-color bitmap.
     
  • The More Curve Fits plugin has been amended to include the equation form y=A*(x+B)^C
     
  • The Raw Data file import plugin has been amended to include support for single- and double-precision floating point numbers and multiple data sets, and also has inputs for the X interval between points and an option to read the X interval and number of data sets from a short (8-byte) header in the file.
     

22 December 2003
Version 1.9.1

  • Fixed a bug introduced with the addition of "Tab-separated values" to the list of file output formats. File export plugin indices were off by one, such that if you selected "BMP Picture" you'd instead get "JPEG Picture". This bug generally effects licensed users only, as plugins are not distributed with the evaluation version.
     

18 December 2003
Version 1.9.0.9

  • Fixed one more problem associated with new capabilities in reading multiple-column text files. If the file contained 20 or more lines of text preceding the data, DPlot would determine that the file contained only text and refuse to process it farther.
     
  • Spline interpolation method of Equal Intervals command was fouled up starting with version 1.9
     
  • You may now have up to 99 undo levels per document. The previous limit was 8.
     
  • Undo files for editing data points with Edit data on 3D surface plots was broken by the addition of 3D scatter plots in v1.9.
     
  • Under some circumstance, "undo"ing a change in data did not correctly restore the data, and on Windows XP may have resulted in a crash.
     
  • Added the option to save data from any 2D or 3D plot type as tab-separated values, in addition to comma-separated values. As with comma-separated values, this option is only available for XY plots if all curves share the same X values and all curves have the same number of points.
     
  • You may now open multiple DPlot files with the File>Open command. Each DPlot file is opened in a new document window. Thanks to Karin Heider for the suggestion.
     
  • Last update's feature of using a negative Z scale on 3D plots to reverse the normal drawing direction has been expanded to include X and Y.
     

10 December 2003
Version 1.9.0.8

  • Added a simple fix to 3D plots to allow the use of a negative Z scale factor so that the positive Z direction is down in the plot.
     
  • Added an option for all 3D data plots to skip 1 or more legend labels. This may be a handy feature if you like using a large number of contour intervals but don't particularly want the legend to dominate the plot.
     
  • Equal Intervals command previously forced the start and end points of the new curve to be multiples of the interval. And a couple of roundoff problems sometimes caused the output curve to have 1 less data point than expected.
     
  • The elimination of Y=f(Y1,Y2) for the more general Y=f(X,Y1,Y2,...) led to problems with the AddCurves, SubtractCurves, and other macro/DDE commands.
     
  • The new capabilities of interpreting CSV and other multi-column files ended up preventing at least one user from reading his standardized file formats, in that the data was preceded by several header lines consisting of a text string followed by several columns of numbers. In previous versions, DPlot would see that the opening text string was not a number, and so decide that the data must start further down in the file. In version 1.9, DPlot still recognizes the opening text string as a non-numeric field, but doesn't disqualify the line from being a data line as a result. If the file contains at least 3 consecutive lines that contain the same number of columns and the same data type in each column (which this user's file format did), then DPlot decided that this must be where the data starts. In this version, DPlot checks for 20 consecutive lines with the same number of columns and the same data type in each column. This change of course isn't foolproof; the addition of more header lines with the same format would cause the 20-line criteria to find a false match. If this ends up being a problem for anyone we'll add an input that asks the user where the data starts rather than trying to determine this automatically.
     
  • Several file formats were processed using an older Windows API call that limits filenames to 128 characters.

5 December 2003
Version 1.9.0.5

Argghh! Several bug fixes, most associated with the 1.9 change from single- to double-precision data.

  • Smooth command for XY plots produced a botched-up curve.
     
  • On some systems under some circumstances, the Contour Options command on the Options menu for 3D surface plots crashed.
     
  • FFT crashed if the number of input points was not a power of 2.
     
  • New 3D scatter plots did not prevent you from attempting to read a file containing more than 100 data sets (the max) and DPlot crashed if you attempted to do so.
     
  • Along with testing 3D scatter plots with a large number of data sets, it was found that a Use last-selected symbol for ALL data sets option would be handy.
     
  • Interpolate command caused a crash if a curve used a long legend string (an equation, for example).
     
  • BMP export (licensed version only) crashed if the RLE-encoded bitmap required more memory than the uncompressed bitmap.
     
And finally, a few new useful features unrelated to bugs:
  • Added Preserve3DScaleFactor macro/DDE command, which is useful when producing a series of frames that will later be used in an animation, such as the airfoil MPEG referenced on the features page.
     
  • Added SetClientRect macro/DDE command. This resizes a document window or the main application window such that the working area has the requested dimensions.
     

2 December 2003
Version 1.9

  • 3D Scatter plots.
     
  • Internally, all data is now stored using double precision (8 byte) floating point numbers rather than single precision (4 bytes). For the majority of users this change will have little effect. But it will avoid precision problems that previous versions had when plotting large numbers with small (but significant) fractions.
     
  • Support for CSV (comma-separated values) files has been greatly improved. Your CSV files may now contain dates, times, date-time pairs, and currencies. In addition, DPlot will automatically ignore columns that aren't interpreted as numbers or any of the other supported types without requiring the use of quotation marks.
     
  • Added Delete Thin Triangles command for random 3D data. This command is handy for cleaning up plots generated from truly random data, removing slender triangles from the edge of your surface (also from any interior holes you've created with Delete Triangles). Triangles with interior angles less than 5 degrees are removed if the associated triangle vertex is on a free edge. Thin triangles often do a poor job of mapping a surface. Triangle removal is recursive: if triangle B has an interior angle less than 5 degrees which borders triangle A, and triangle A is removed, then triangle B will also be removed.
     
  • Replaced Y=f(Y1,Y2) command with more general Y=f(X,Y1,Y2,...) command. The new command allows you to generate a new curve from an equation that is a function of X and/or one or more of the amplitudes from existing curves. Thanks to Laurent Paris for the suggestion.
     
  • For "Month" number formatting, the default tick mark interval on XY plots will be 1 (1 month) if the extents of the corresponding axis are more than 3 or up to 24 (2 years). If the tick mark interval is 1.0, then axis labels will be placed at the center of the tick mark interval rather than centered on the tick marks, as is done with all other number formats.
     
  • For "Date" number formatting, several functions (List Peaks, List Peaks in Range, Scan Points) as well as the status bar readout of mouse position show the time of day along with the date.
     
  • Added "None" number formatting, which is useful for creating blank graph paper. See the modified "How do I?" Help topic on creating graph paper for a simple macro that creates blank log-log paper.
     
  • On 2D contour plots, if you use a custom color palette and set the color for the low and high levels to the same color, then DPlot now considers the contour values to cycle; in other words it considers the low end of the scale to be equivalent to the high end of the scale. In this case, triangles that have all three vertices at either the high or low end of the scale will use the same solid color across the entire face of the triangle. In the case of contour lines, no lines will be drawn on this triangle. Thanks to Bill Frenchu for the suggestion.
     
  • Added Polar Plot Options menu command. This replaces the Units command for polar plots and also allows you to specify the orientation of the plot (0 degrees at the top of the plot and/or clockwise angles). It also has a switch to force polar plots to be circular, which saves you from the trouble of specifying a square width and height for the plot. If you want elliptical polar plots, of course you may still have them. Added PolarPlotStyle macro/DDE command to make these same settings.
     
  • Point labels (added with Text>Label points menu command) may now be included on polar plots.
     
  • Negative angles are now allowed as input for polar plots.
     
  • Zoomed views are now saved to and restored from DPlot files. Manually-entered extents are now correctly saved to the values entered. In previous versions if you zoomed in and then saved a file, the extents were saved as the current zoomed view.
     
  • Probability scales are no longer forced to be symmetrical. For example, if your data extends from X=0.001 to X=50, then the X axis extents will be 0.001 to 50 rather than 0.001 to 99.999.
     
  • DPlot now distinguishes between default input and output folders.
     
  • Added "Friedlander's Equation" to the functional forms in the "More Curve Fits" plugin (distributed with the licensed version only). This equation is generally used to fit pressure-time histories from explosive events.
     
  • Added a switch to hide/show the legend.
     
  • Print margins and orientation are now preserved from one session to the next. (Margin settings may be overridden by margin settings saved in a DPlot file.)
     
  • Added fact (factorial), erf (error function), and cdf (cumulative distribution function) to the function parser (used by Y=f(X), et. al.)
     
  • Insert Link menu command is now quite a bit more useful, and in general the functionality of linking data from other applications has been improved. The Insert Link dialog now shows recently used links, which may be selected and re-used. There's also a Current links list which shows all of the links for the active document and allows you to unlink data. Most importantly, DPlot now behaves correctly with multiple links in the same document. Thanks to Raymond Delaforce for all of the suggestions.
     
  • Added RemoveLink macro/DDE command, which removes the association between the server application and DPlot originally established with an InsertLink macro/DDE command or the Edit>Insert Link menu command.
     
  • Starting with this version, if the currently active document window is maximized, then new document windows (created by the File>New command, for example) will also be maximized.
     
  • Support for unformatted binary files has been expanded to allow multiple curves in the same file.
     
  • "Smoothing window" parameter of the Edit>Smooth command and "Interval" and "Interpolation method" parameters of the Edit>Equal Intervals command are now persistent.
     
  • Title lines for all types of plot are now centered horizontally on the plot, not including axis labels or other objects outside the plot box. In previous versions the title lines were centered on the output width, which led to inconsistencies between the display and metafiles.
     
  • In previous versions of DPlot, the legend and notes were forced to be on the screen. Unfortunately this led to inconsistent placement between what was seen on the screen and printed or copied to metafiles if, for example, the legend was placed well outside of the plot. In this version the legend and notes are no longer restricted in this way, so that you should get consistent placement on all output devices. This creates a new problem, though: it is now possible to resize a plot such that the legend or notes are completely off the screen and inaccessible. A new menu command (Text>Force legend/notes on screen) has been added to move those items such that they are completely visible on the display. This command is not persistent; it only changes placement at the time you use it.
     
Bug fixes:
  • New symbol types were written incorrectly to preference files.
     
  • Symbols used in the legend were clipped if the legend was placed outside the plot.
     
  • Corrected bug in macro facility that prevented ForFilesIn loops from working correctly if user had Explorer's "Hide file extensions for known file types" checked.
     
  • Equal Intervals command was not enabled properly after creating a single curve unless the curve was created by a method that by definition produced monotonically increasing X values.
     
  • Corrected a bug with Text>Label Points command. Selecting a curve with only 1 point caused DPlot to crash.
     
  • You were not allowed to draw a lone contour line on 2D contour plots. If you attempted to set the number of intervals to 1 programatically, or if you set the low and high contour levels to be equal, DPlot crashed.
     
  • Mouse cursor clipping was fouled up on dual monitor displays after operations that restricted cursor movement (Zoom, List Peaks in Range, et. al.)
     
  • Color settings read from a preferences file were assigned to the default color palette (used in new plots), rather than the currently active document.
     
  • Removing the first notation (Text>Add/Edit Note) by deleting all of the text in the note (as opposed to clicking the Remove button) caused DPlot to crash.
     

9 September 2003
Version 1.8.3

  • Error bar values may now be retrieved from another "curve", so that you may now have unique error bar magnitudes at each data point.
     
  • You may now specify how many symbols are used per entry in the legend of XY plots. Previous versions always used 2 symbols. Added an optional parameter to the LegendParams macro/DDE command to reflect this change.
     
  • Added Arrowheads menu item to toggle the appearance of arrowheads on the coordinate axes of XY plots when Axes Only is selected.
     
  • The user-defined color palette for contour plots may now consist of from 1 to 16 colors (previous versions were limited to 6 colors only). As with previous versions, DPlot interpolates between these colors if there are more contour lines/shades than table entries.
     
  • For contour plots with shaded color bands (as opposed to contour lines), DPlot now adds > and/or < symbols to the user-specified high and/or low contour values in the legend if those values are more than 1 contour interval different than the maximum/minimum data extents.
     
  • Added "Initially turn symbols off/lines on" to the Options>General menu command. This feature will help avoid frustration for users who frequently plot very large data sets and also, on occasion, create plots with symbols. (By default, DPlot passes symbol and line types on from the first open document to all new documents. So if you work with a plot containing symbols, then create a new plot with several hundred thousand points, you can expect to wait a while as DPlot renders several hundred thousand symbols if this option is unchecked).
     
  • Added Erase group menu command for 1D plots.
     
  • On the Point Labels dialog, the operation performed by the Ymax and Ymin buttons has been changed such that they will select the maximum or minimum values within the current window (after zooming, for example) rather than the absolute maximum/minimum values. Thanks to Edgar Poth for the suggestion.
     
  • File type 'B' (ASCII text file with number of points followed by X,Y pairs) will now accept multiple curves in the same file.
     
  • Added toolbar button for List Peaks within a Range.
     
  • Removed the "Use arrow keys to pan" message from the status bar when zooming. This message was previously locked in for 5 seconds and was an annoyance for many users.
     
  • DPlot Viewer now interprets command line parameters, so you (or your end users) can associate a file type with dplotvu.exe and double-click a file to open it in DPlot Viewer.
     
  • Added Bandpass option to Edit>Filter, which allows you to preserve frequencies within a specified range and/or use a low-pass or high-pass filter to reject frequencies above or below a specified limit. Also amended EditFilter macro/DDE command to take into account this capability. Also see the Help topic for the Smooth command for an additional method of low-pass filtering your data.
     
For programmers:
  • TextPointLabel command now allows you to rotate labels 90 degrees.
     
  • SymbolSize command now allows you to change the size of symbols for all curves with one command, similar to the way the SymbolType, LineType, and LineWidth commands work
     
  • Added ContourCustomColors and ContourColorScheme commands, which allow you to specify one of the two predefined color palettes or a custom color palette used to draw contour lines or shades.
     
  • Added ContourLabelLines command to allow you to specify whether individual contour lines are labelled, the frequency of the labels, and whether the labels are transparent or opaque and drawn in black or the same color as the contour line.
     
  • Changed LineWidth command so that it may be used to set the width of the pen used to draw contour lines.
     
  • Changed WindowTile command to accept a parameter that changes the window arrangement from "tall rather than wide" to "wide rather than tall".
     
  • Increased the default timeout value in DPLOTLIB functions from 1 second to 10 seconds. The shorter timeout value worked fine for most plots, but was insufficient for large (>10000 points) contour plots of random 3D points.
     
  • Line segments drawn as a result of XY or XYXY commands or with the new DPlot_AddData DPLOTLIB function were not repainted properly if the ManualScale command was also used and the DPlot window was covered/uncovered.
     
  • Added DPlot_GetBitmapEx. This function is very similar to DPlot_GetBitmap, but also returns plot metric information that enables the calling application to map bitmap pixels to data space. So you can, for example, display the X and Y coordinates corresponding to the current mouse position. The XY plot in the btest2 example program does exactly this.
     
  • Added DPlot_GetEnhMetaFile, which retrieves an enhanced metafile of the specified size of an already existing plot. See btest4 (VB demo) and ctest4 (MSVC demo) in the DPLOTLIB distribution.
     
  • Added DPlot_SetErrorMethod. The DPLOTLIB DLL now contains much more specific error information, which in general should not be necessary for your released product but may be very helpful during development. DPlot_SetErrorMethod allows you to specify how error messages are displayed: either using OutputDebugString, a system-modal MessageBox, or not at all.
     
Bug fixes:
  • DPlot crashed with formulas used in Y=f(X) and other commands if the formula contained a superfluous leading equal sign, as in "Y=X+5" instead of the correct "X+5".
     
  • Version 1.8.2 used several functions from WS2_32.DLL, which is distributed with all Windows versions after Windows 95 Service Pack 2, but not with the original Windows 95. This prevented DPlot from running on some Windows 95 systems. This code has been removed.
     
  • Interpolation routine used by the Interpolate menu command incorrectly used linear interpolation on plots with a probability scale on the X axis. Thanks to Michael Duncan for pointing out the problem.
     
  • In previous versions it was possible to save a DPlot file that contained a curve with 0 points. This would cause DPlot to crash when the file was re-read. This situation might have occurred as the result of a macro using the SelectCurve command for which the curve index was greater than the number of curves, after which no new points were added to the new curve. Thanks to Karin Heider for pointing out the problem.
     
  • DPlot did not properly save notes that consisted of a single character.
     
  • ManualScale macro/DDE command did not allow you to specify the Z extents for a 3D plot.
     
  • DPlot files saved while in data processing mode may or may not have had data processing mode turned on automatically when the file was re-read.
     
  • Filter command for XY plots would crash if you selected the Press notch filter with "reject frequency" set to 0.
     
  • DPlot Jr only: Log scale tick labels menu command was missing, and SymbolType documentation was outdated.
     
  • Color selections used in 1D plots on a 256-color display were not used correctly. This problem was chiefly apparent with multiple open documents using different color palettes.
     

19 June 2003
Version 1.8.2

  • Added Amplitude Limits menu command and corresponding YCutoff DDE/macro command. This allows you to specify the upper and lower limits outside which data points will be ignored. Line segments will not be drawn to or from these points. In this way you can create gaps in your curves. This is particularly handy for plotting data with sign-changing asymptotes, like tan(x).
     
  • Added controls to the Titles, Legend/Labels, and Note dialogs to embed color codes within text entries.
     
  • DPlot now does a much better job with clipboard metafiles in general and with enhanced metafiles containing embedded formatting codes (subscript, superscript, etc.) in particular. Previous versions of DPlot always copied a standard Windows metafile to the clipboard; conversion to an enhanced metafile was left up to Windows. This left quite a bit to be desired with character placement of subscripts and superscripts. One additional benefit of this change is that enhanced metafiles can in general be stretched or compressed within reason and all of the text entries, including the box around the legend, will be scaled correctly. Scaling was a hit-or-miss proposition with previous versions.
     
  • Contour plots now have an option to draw grid lines at the X and Y tick marks, in addition to or instead of the lines bordering the triangular mesh or rectangular grid cells.
     
  • For developers, the ManualScale command now behaves with XYXY in much the same way as it does with XY: If an incoming X value exceeds the upper limit of X, DPlot pans to the right by 1/2 of the X extents.
     
  • Font colors are saved to DPlot files. In all previous versions colors were initialized to black, regardless of your previous color selections.
     
  • Bug fixes:
    • Legend on both 2D and 3D contour plots was printed in the wrong location, depending on what the print margins were set to.
       
    • Previous change to Smooth command allowing you to smooth a subset of the data introduced a new bug that caused this command to crash in some circumstances. Thanks to Jean-Louis Oneto for pointing out the problem.
       
    • Clicking the close (X) button (rather than the Cancel button) on any of the Edit Data dialogs would cause DPlot to crash on some versions of Windows.
       
    • Copy/Move Curves was prone to produce needless "insufficient memory" errors if you attempted to copy a large number of data points (say, 1 million) to a document that had a large maximum number of curves, e.g. 100. Reallocation is handled better now, only allocating memory for however many curves are actually needed rather than preserving the previous maximum.
       

1 June 2003
Version 1.8.1.2

  • Added a workaround to make box and whisker plots be recreated correctly in metafiles pasted from the Clipboard in Microsoft Office 2000 products. In previous versions, if most or all of the plot options were enabled (outliers, extremes, etc.) then a glitch in Office products caused them to lose track of the current drawing pen, resulting in (usually) whiskers not being drawn.
     
  • Bug fixes:
    • DPlot's formatting codes for subscripts, superscripts, Greek characters, etc., are now supported on axis labels of 3D plots. Thanks to John Spalding for the prod to get this working.
       
    • Also related to 3D plots, Generate Mesh command did not properly transfer axis labels from the source plot to the generated plot.
       
    • The triangulation routine used for random 3D points attempts to create non-slender triangles, which is as it should be. But in previous versions of DPlot, units (and therefore data extents) were ignored. This had the unfortunate effect of creating a plot consisting of very slender triangles if the X extents differed significantly from the Y extents. In this version, DPlot temporarily squares up the X and Y values by scaling one or the other of those coordinates, resulting in a much better contour plot for data with differing X and Y units. Hats off to Ralph Baird for pointing out the problem.
       
    • If a non-zero pen width was used for the coordinate axes, symbols lying exactly at an axis extent were not drawn. This version takes the axis pen width into account and properly draws those symbols.
       
    • If manually-entered extents were used to reverse the direction of the Y axis, the values for a second dependent Y axis were drawn incorrectly if Box Around Curves (rather than Grid lines) was used.
       
    • Box and whisker plots copied to the Clipboard as metafiles were not clipped properly if you used Extents/Tick Marks/Size to view less than the total extents of the data. Thanks to Colin Wagoner for pointing out the problem.
       

29 May 2003
Version 1.8.1

  • Added 18 new symbol styles, for a current total of 38. Also added an option to use antialiasing techniques for drawing symbols on 16-, 24-, and 32-bpp displays. See Options>General.
     
  • Added the ability to pan left, right, up and down on zoomed XY plots. No buttons required, just use your keyboard arrow keys. This has been suggested many times in the past; thanks to Ed Quick for the prod to finally put this into action.
     
  • Added several new menu commands to specify the frequency of labels on logarithmic scales. See Options>Log Scale Tick Labels.
     
  • In response to several inquiries along the lines of "How do I change the order of the legend?" we've added two new commands to the right-click menu for the legend: Move up and Move down and a new Reorder Curves command on the View menu. Reorder Curves replaces the less useful Bring to Front and Send to Back commands.
     
  • For new users, the How do I? section of the Help file now includes step-by-step instructions for creating many of the example plots distributed with DPlot.
     
  • Added Median of All Curves command to the Generate menu, and corresponding Medians() macro/DDE command. This command produces a new curve consisting of the median amplitudes of all existing curves. Thanks to Mason Guy for the suggestion.
     
  • Added Swap X,Y command to the Edit menu for 3D plots. This option might be useful if, for example, your 3D input files are ordered latitude, longitude, elevation (rather than longitude, latitude, elevation). Thanks to Risto Salo for the suggestion.
     
  • Multiple column files containing X-Y data may now include a data row ID character string, specified at the time the file is opened. Thanks to Nick Cooper for the suggestion.
     
  • For unequally spaced points, the Differentiate command now uses a central difference method for calculating slope. Previous versions used an inverse trapezoidal rule. While technically correct, this generally resulted in roundoff errors being propogated forward and giving increasingly bad results with increasing X. Thanks to Sukhdeo Karade for the suggestion.
     
  • For box-and-whisker plots and dot graphs, you may now specify the color of the line used to depict the grand mean or median. Changed Stat_GrandMean macro/DDE command to include an optional color parameter.
     
  • Y=f(X) command now allows you to enter a from X value smaller than to X.
     
  • Changed LineType and SymbolType macro/DDE commands so that you can easily set the line and symbol types for all curves to the same value with one command.
     
  • Added ColumnsAre macro/DDE command to tell DPlot that multiple column files subsequently opened with FileOpen or ForFilesIn commands should be interpeted as alternating columns of X and Y rather than the default one X column with multiple Y columns.
     
  • Bug fixes:
    • Fixed the default extents for box-and-whisker plots such that whiskers (if drawn) will not be clipped.
       
    • Macro/DDE command names that included an underscore character were not processed properly by the macro facility.
       
    • Last version's fix to small roundoff problems did not work properly for negative values used for user-defined extents on X-Y plots.
       
    • DivideCurves macro command did not work. Thanks to Michael Sears for pointing out the problem.
       
    • Zooming on XY plots with multiple Y scales sometimes produced illogical extents on the second Y axis.
       
    • Labels for multiple Y axes with a probability scale on X and linear scale on Y were incorrect. Thanks to Kirt Harle for pointing out the problem.
       
    • Several problems with color mapping on 256-color displays have been corrected. These problems were a byproduct of a fairly recent change allowing unique color palettes for each open document.
       
  • Licensed version only:
    • Added inverse polynomial (y=1/(A+Bx+Cx^2+...)) to the curve fitting plugin.
       
    • Added file import plugin to read raw data files consisting of 8-, 16-, or 32-bit signed or unsigned data, with either Intel or Motorola byte order.
       

26 April 2003
Version 1.8.0.2

  • Previous versions did not draw symbols at data points lying on the X or Y axis extents.
     
  • Bug fix: The equation parser (used by Y=f(X), etc.) crashed if your equation contained an operator (+,-,*,/,^) followed by a negative number not enclosed by parentheses. The parser also failed to trap the error of raising zero to a negative power.
     
  • Bug fix: Probability scales on the X axis bombed for X values outside the range 0.01-99.99. In this version the X axis is treated identically to the Y axis: values outside the range 0.001-99.999 are clipped.
     
  • Bug fix: Small roundoff errors when using user-defined extents might have caused incorrect extents to be used.
     
  • Added Combine Curves command to the Edit menu. This allows you to append the data values from one curve to another curve. Added corresponding CombineCurves macro/DDE command
     

13 March 2003
Version 1.8.0.1

  • Bug fix: The equation parser (used by Y=f(X), etc.) crashed if your equation included an operator followed by a number with a leading decimal point. For example, Y=X*.25 crashed, while Y=X*0.25 worked.
     
  • Bug fix: Equation parser did not correctly interpret numbers using scientific notation (i.e. 1.5E+3). In most cases this resulted in the number being interpreted as 0.
     

10 March 2003
Version 1.8

  • Point label placement on XY plots is now more consistent and less annoying. Previous versions were prone to shift labels around in an effort to ensure good arrow placement. In this version, labels stay where you put them and the arrow anchor point will shift to one of the 4 sides of the label as needed. Added a setting to draw labels turned 90 degrees. And last, you may now include up to 50 labels in a single plot (previous limit was 20).
     
  • Both major and minor grid lines on XY plots may now be drawn with a line style other than solid lines. Also added missing support for Dense Grid Lines setting to polar plots.
     
  • Added Powers of 10 number formatting. This is a nice enhancement over scientific notation (e.g. 1.45E+3)
     
  • Smooth command on the Edit menu has been modified to allow you to operate only on points between specified limits. The corresponding EditSmooth macro command has likewise been modified. Thanks to Dr. Thierry Picornell for the suggestion.
     
  • Bug fix: Corrected placement of Y and Z axis labels on triangle plots for output to metafiles.
     
  • Bug fix: Depending on the version of Windows in use, DPlot would either crash or produce a bogus error message when reading .CSV files containing X,Y,Z points (file type K) if the file contained one or more extra blank lines at the end of the file.
     
  • View>Playback command now has the ability to view an AVI file along with your data, played frame-by-frame in sync with your data at the speed you specify. The majority of users who read this will scratch their heads and wonder what the point of this is. If, on the other hand, you spend hour after hour analyzing video footage and megabyte upon megabyte of data recorder output from high-speed events (things that go BOOM, for example), you'll most likely find this addition to be very, very,.... very cool.
     
  • Added SymbolFrequency macro/DDE command for XY plots. Thanks to David McDaniel for pointing out the oversight.
     
  • Changed both the plugin and DDE interfaces to allow you to plot and/or operate on up to 100 curves/plot, and work with legend entries of up to 80 characters. Previous limits matched those of older versions of DPlot (20 curves/plot, 40 character legend entries). This change will not break existing plugins or applications sending data to DPlot.

DPlot Jr/DPLOTLIB.DLL

DPlot Jr distribution now includes DPLOTLIB.DLL and several new example programs using DPLOTLIB.

Additions to DPLOTLIB:

  • DPlot_PlotToRect is similar to DPlot_Plot, but starts up DPlot (or DPlot Jr) in a hidden state and draws the plot to a caller-specified rectangle in a specified window. The picture is not preserved in any way, so that if it is covered by another window it is then basically gone for good. You may, however, be able to think of several applications where this behavior might be useful. To keep the picture, you need....
     
  • DPlot_PlotBitmap is very nearly identical to DPlot_PlotToRect, but rather than drawing the plot returns an HBITMAP handle to a bitmap representation of the plot. It is the calling application's responsibility to then draw the bitmap and delete it when it is no longer needed. Both DPlot_PlotToRect and DPlot_PlotBitmap clean up after themselves: DPlot will be closed before the function returns, unless it was already running. To speed things up a bit and avoid starting DPlot every time you want a new picture, use DPlot_Start (see below)
     
  • DPlot_GetBitmap does not draw anything; it retrieves an HBITMAP handle to a bitmap of a specified plot, usually, but not necessarily, a plot generated by the calling application. As with DPlot_PlotBitmap, it is the calling application's responsibility to draw the bitmap and delete it when it is no longer needed.
     
  • DPlot_Start starts up DPlot (or DPlot Jr) with an option to hide it from the user. This function will also tell you whether DPlot was already running when called, so that you don't annoy the user by closing DPlot when the user didn't want it closed.
     
  • DPlot_Stop closes DPlot if it is hidden or if no open document windows contain a plot. This function should only be called if DPlot_Start was used to open DPlot and the program was not already running.
     

11 February 2003
Version 1.7.9.2

  • Bug fix: (Whoops) New More Curve Fits plugin released yesterday retained debugging code that would cause the plugin to crash on all systems other than the author's. Very sorry for the inconvenience.
     
  • Bug fix: Baseline Shift plugin did not properly catch the case of the detected arrival time occurring at the first data point in the input. This caused a divide by zero error and... another crash.
     
  • Bug fix: Notes did not work properly with metafiles copied to the Clipboard on Windows 2000 and XP. One other strange aspect of metafiles that has also been fixed: Office 2000 products displayed black grid lines unless the grid line width was greater than 1 pixel, though the Windows ClipBook Viewer displayed the correct color.
     

10 February 2003
Version 1.7.9.1

  • Bug fix: Function parser used by Y=f(X) and other commands did not work properly with numbers containing trailing decimal points if that number was followed by an operator. So even though "10+x", "10.0+x", and "10.+x" are functionally equivalent, the first two forms worked as expected but the last form would cause a crash.
     
  • Bug fix: File Append with DPlot files did not work properly unless the maximum array sizes were already set to values large enough to accommodate the new file.
     
  • Bug fix: Not so much a bug but a design flaw, when opening a file if the number of points in the file exceeded the current maximum number of points, DPlot would attempt to reallocate the arrays using the required number of points and the current maximum number of curves. So if, for example, you had arrays allocated for a maximum of 100 curves and attempted to open a file containing 1 million points, DPlot would attempt to allocate arrays for 100 million points.
     
  • Bar charts:
    • Formatting options have been expanded to include percentage labels instead of or in addition to amplitude labels.
    • Labels may now be placed above bars. Previous version always drew labels just inside the top of the bar, and bars shorter than the label text did not include the label.
    • Bar chart options have been added to the input dialog for Generate>Histogram so that you can generate a bar chart with the options you want the first time, rather than being required to edit the options of the new chart.
    • Last accepted bar chart options are preserved from session to session and are now the default options for any new bar charts.
    • Bar charts may now include error bars. For best results turn off all labels and use side-by-side (rather than stacked) bars with multiple data sets.
    • Histograms will copy both the 1st and 2nd title line (if one exists) from the source plot. Previous versions copied the 1st title line only.

     
  • Curvefit plugin (licensed version only):
    • Added one new equation form: (Y=A+B*exp(C*X)+D*exp(E*x).
    • Improved determination of default initial coefficients for several equation forms.
    • Added a max iterations entry that might be useful for the exponential forms that tend to converge slowly.
    • The plugin now takes a bit of preemptive action in forcing coefficients to legal values in the case of the exponential forms. This change allows a poor initial fit to find a better solution without blowing up with an overflow error.

     

6 February 2003
Version 1.7.9

  • Added Edit Mode tool which allows you to point/click/edit data points for XY plots and 2D plots of 3D data. For XY plots you may also optionally label the point using this tool.
     
  • For the licensed version only, improved initial estimates for the coefficients in an exponential curve fit. Previous versions worked well for more-or-less noiseless input, but not well at all with a lot of scatter.
     
  • Added the ability to import macros from disk. This is useful if you are running DPlot on multiple systems and/or want to be able to share macros with others with a minimum of fuss. Imported macros will be copied to the /MACROS folder below DPlot.
     
  • Tick mark intervals for calendar dates (set with the Number Formats command) are now much more sensible, falling at the 1st and/or the 15th of every month depending on the extents of the data. Previous versions placed tick marks at equal intervals (equal number of days).
     
  • Custom colors used in contour plots may now be saved and re-opened on the Contour Plot Colors dialog. Also added color picker controls for each of the six colors. Previous versions required you to enter explicit r,g,b values for each color. Thanks to Ukuleles by Kawika's David Hurd for the suggestion.
     
  • For 3D data, added a preview of the contour values to the Contour Plot Options dialog that takes some of the guesswork out of selecting an appropriate number of intervals, lower limit and/or upper limit.
     
  • DPlot now does a much better job of picking an initial number of contour intervals. Default contour values will now be some multiple of 1, 1.5, 2, 2.5, 4, or 5 times a power of 10.
     
  • Added ability to label contour lines on the plot, rather than restricting you to using the legend. You control whether the labels are transparent or opaque, same color as the corresponding line or black, and the frequency of the labels. This feature will no doubt be tweaked a bit; if you try it and have a suggestion, of course let us know.
     
  • Added OperateX, OperateY, and OperateZ macro commands, corresponding to the new menu commands that allow you to manipulate plot coordinates with an equation.
     
  • Bug fix: If you either zoomed in or forced the extents of a 2D plot of contour lines, saved metafiles did not properly draw the contour lines.
     
  • You may now control the line weight of contour lines on 2D contour plots. Previous versions fixed the line weight at 1 pixel for display monitors and bitmaps and 0.01 inches for printed output. Thanks to Herb Sorensen for the suggestion.
     
  • Add a Constant to |X,Y,Z| and Multiply |X,Y,Z| commands have been eliminated in favor of a more generic Operate on |X,Y,Z| command that allows you to manipulate plot coordinates with an equation that is a function of X or Y for XY plots or X,Y, and/or Z for 3D plots. Thanks to Dimitris Evangelinos of the Aristotle University of Thessaloniki for this and the following suggestion.
     
  • Multiple column input files (type D on the Select File Type dialog) may now contain non-numeric columns within the data, as long as those columns are "surrounded by quotation marks". DPlot will ignore non-numeric columns, other than to display them on the Specify Columns to Plot dialog.
     
  • Function parsing routine now accepts log10 in addition to logh for base 10 logarithms.
     
  • Bug fix: Saved metafiles (both enhanced and standard Windows) for 2D contour plots did not use the correct font for numbers along the X and Y axes, and included much more white space than necessary.
     
  • Bug fix: Function parser used in Y=f(X), X=f(T), Y=g(T), and Z=f(X,Y) commands did not properly trap raising a negative number to a non-integer power. Attempting to perform this operation resulted in a crash.
     
  • Bug fix: In previous versions if you turned on Data processing mode when more than two curves were present, then later used Undo to turn data processing mode off, DPlot crashed.
     
  • Bug fix: Negative values on stacked bar charts were not drawn as most would expect, which is to say they were inconsistent with how Microsoft Excel draws them. New bar labelling feature did not work at all with negative values.
     

17 January 2003
Version 1.7.8

  • Added Playback command to the View menu, which allows you to animate one or more XY plots.
     
  • Bug fix: DPlot now traps underflow errors on input and truncates offending numbers to 0. In previous versions, it was possible to read a file or paste data from the clipboard that contained values with magnitudes less than 1.17549E-38 (roughly the limit for single precision floating point numbers). This behavior could eventually cause a crash, usually when writing a file to disk. Thanks to James Drake for pointing out the problem.
     
  • Bug fix: Math errors (divide by zero, for example) in the function parsing routines used by Y=f(X), etc. caused a crash on Windows 2000, regardless of whether Prevent divide by zero was checked.
     
  • Bug fix: The last several versions failed to detect any of the data recorder file formats when a file of that format was dropped onto DPlot's window. This version should successfully identify any of the supported data recorder file formats without user intervention.
     
  • Moved bar chart formatting options from the main menu to a separate dialog and added Bar amplitude labels option. If checked, labels showing the height of each bar are drawn near the top of the bar. BarChartStyle macro command has been expanded to include flags for stacked bars and bar labels.
     
  • Added GenerateMesh macro command to produce a rectangular grid of 3D points from a triangular grid of random 3D points.
     
  • Several commands on the Edit menu for XY plots now allow you to select multiple curves to operate on. Previous versions allowed you to operate on all curves or one curve only. Thanks to Susan Blouin for the suggestion.
     
  • Added RunPlugin macro command, which allows you to run any of the Generate menu's plugin modules from within a macro or from another program.
     
  • Bug fix: Custom line drawing routine used for XY plots with patterned line styles did not properly handle (again) densely-spaced data points. Hopefully this version represents the final fix to this problem.
     
  • Bug fix: Label Points command for XY plots improperly placed labels for the first data point in a curve.
     
  • Bug fix: Macro editor improperly overwrote previously saved macro files with new macros if the first 5 letters of the macro names were identical.
     
  • Added Delete Triangles command to the Edit menu for randomly-spaced 3D points. This command allows you to select and delete multiple triangles in one pass, an improvement over the right-click context menu command described below.
     
  • Added a planar interpolation method to the Generate Mesh command for randomly-spaced 3D points. Although the bivariate interpolation scheme used in this and older versions works very well with smooth surfaces, it is a very poor interpolator for meshes that have sudden changes in Z. The planar interpolation method simply maps each generated point to the plane of the triangle that bounds the X,Y coordinates. The resulting surface will not be as smooth as one produced with the bivariate method, but it will correctly handle sudden changes in Z.
     
  • Added Number triangles command to the Edit menu for randomly-spaced 3D points. This feature is useful when deleting triangles from the mesh. Why delete triangles? DPlot will always triangulate a convex mesh from your input 3D points. Although (given the limited information in the input) this is "correct", it may not always be what you want. You can now delete triangles from the mesh by right-clicking on triangle N and selecting Delete Triangle (N), where N is the triangle number.
     
  • Changed the drawing order for 2D contour line plots. In previous versions grid lines were always drawn last, possibly obscuring the contour lines.
     
  • Relaxed syntax checks when reading DPlot files. In previous versions if a DPlot file contained new settings not supported by older DPlot versions, an older version of DPlot would balk and refuse to produce a plot. This version will instead display an error message and suggest that you update DPlot. The key difference is that the plot will now be displayed.
     
  • Bug fix: For 2D contour plots of random 3D points, if a contour line passed exactly through the vertex of a triangle then in many cases the contour line segment for that triangle was not drawn.
     
  • You may now specify the color of grid lines. Default grid line color is light gray (r,g,b=192,192,192) for XY and 1D plots, black for 3D plots. You can change grid line color programmatically using a new setting for the [Color()] command.
     
  • Bug fix: The last several versions of DPlot have been distributed with a version of FPARSER.DLL (used to generate data by formula) that did not include exp, sinh, or cosh. These functions have been re-added.
     
  • Bug fix: It was possible to confuse DPlot's "Multiple Print" feature into adding a non-existent blank document to the list of documents to be printed. This generally led to a crash if you then attempted to print.
     
  • Added View>Crosshair cursor menu command and corresponding toolbar button. This feature is useful for visually comparing the amplitude of a point to a reference value. Thanks to Peter Riggs for the suggestion.
     
Licensed version only
  • Added Baseline Shift plugin module. This plugin differs from the Edit menu command of the same name in that it automatically detects the arrival time in the record, rather than requiring the user to input the value. Whether this operation is successful or not of course depends on how noisy the input record is. For more information see the description at the bottom of the Features page.
     
  • Bug fix: Error checking in the More curve fits plugin has been improved dramatically. Previous versions had a bad tendency to crash (and take DPlot with it) if math errors occurred (overflow, underflow, division by zero, etc.). Some equation forms (particularly the power series) tended to produce those errors if care wasn't taken in the selection of the initial coefficient values.
     

11 December 2002
Version 1.7.6.1

Corrected a Windows registry entry problem that has existed for quite a while. The problem prevented opening DPlot files from Explorer if dplot.exe resides in a folder whose name contains spaces, e.g. "c:\program files\dplot".

7 December 2002
Version 1.7.6

  • Legend character strings may now be up to 80 characters long. Previous limit was 40.
     
  • Bug fix: For XY plots, the frame surrounding the legend was improperly sized too wide if the legend used any of the hidden formatting symbols.
     
  • Bug fix: Symbol/Line Styles dialog for XY plots used the wrong color palette to draw example lines and symbols. This was a side-effect of a recent change giving each document a separate color palette rather than using a global palette.
     
  • Text notations may now be included on 3D plots.
     
  • The Select Columns to Plot feature for multi-column ASCII files now allows you to interpret the file as alternating X,Y values rather than the default interpretation of a single X column with one or more Y columns.
     
  • Added Stacked Bars menu command. This feature controls whether bars in bar charts for multiple data sets are drawn side-by-side or stacked from bottom to top.
     
  • The behavior of Text>Date has been changed so that the date is updated only when this feature is turned on and/or when the plot is saved as a DPlot file.
     
  • Added Day of the Week (1=Sun, 2=Mon, etc.) and Month (1=Jan, 2=Feb, etc.) formatting to Options>Number Formats.
     
  • Bug fix: File>Append with a DPlot file containing manual extent specification may in some circumstances have caused a crash.
     

24 November 2002
DPLOTLIB.DLL

Distribution now includes source examples for Borland C++, LCC-WIN32, GNU FORTRAN, and Microsoft FORTRAN PowerStation 4.0.

13 November 2002
Version 1.7.5

  • Added waterfall plots of gridded 3D data. The color options for these plots are currently non-existent.
     
  • Added List Peaks within Range menu command. This is identical to List Peak Values, but first allows you to specify a range in X with the mouse.
     
  • Added Clear all button to Specify Columns to Plot dialog, which is handy for files with a large number of data columns.
     
  • Bug fix: Attempting to add 2 or more notes at once (Text>Add/Edit Note) caused DPlot to crash.
     
  • Bug fix: For XY plots, in some circumstances DPlot's custom line-drawing routine would enter an endless loop. The custom line-drawing routine is used for line styles other than solid, all metafile output, and if the "UseDPlotClipping" flag in the [Debugging] section of dplot.ini is set to 1.
     
  • Bug fix: DPlot balked at opening the 32nd document, claiming that too many documents were already open (32 is the limit).
     
  • Bug fix: DPlot did not previously save "Use thousand separator" selection to a DPlot file. This behavior was actually by design, but was confusing.
     

4 November 2002
DPLOTLIB.DLL

Corrected a problem in the interface for Compaq Visual FORTRAN.

26 October 2002
Version 1.7.4.1

Previous update introduced a bug related to saving color information in DPlot files. Under some circumstances reading a newly-saved DPlot file would cause DPlot to crash.
 

25 October 2002
Version 1.7.4

  • Added two new functions to DPLOTLIB.DLL: DPlot_Command allows you to send one or more command strings to DPlot. DPlot_Request provides a facility for retrieving information from DPlot.
     
  • Color selections for XY plots are now saved to DPlot files. Also, the global color palette is no longer used, other than to initialize colors for new documents. So you may now have a different color palette for every open document.
     
  • Streamlined color selection process for XY plots. DPlot now uses a single color palette for all output devices. (Previous versions used one palette for printers, another palette for all other devices). A single menu item has been added to force printed output to be rendered in black and white. If this menu item isn't selected, B&W printers will simulate the selected color palette with gray shades.
     
  • A recent addition that removed duplicate X,Y values from random 3D points was horribly inefficient on large data sets. Performance with more than 10000 or so points is quite a bit better in this version.
     
  • FileType macro command will now accept a file import plugin description in place of a file type code. So if you want, for example, to open all of the WAV audio files in c:\windows (and you have the WAV Audio plugin distributed with the licensed version), you can:
     
    Directory("c:\windows")
    FileType("WAV Audio")
    ForFilesIn("*.wav")
    NextFile

     
  • Similarly, FileSaveAs macro command will now accept a file export plugin description in place of a file type code. So if you want, for example, to save JPEG images of all of the DPlot files in a folder (and you've installed the JPEG export plugin), you could use this macro:
     
    ForFilesIn("*.grf")
       DocMaximize()
       FileSaveAs("JPEG Picture",".jpg")
       FileClose()
    NextFile

     
  • For programmers, added optional parameters to the ManualScale command that allow you to specify the extents of a second, independent Y axis.
     
  • All dialog boxes that allow you to pick a curve from a list composed of curve legends now display those legends complete with the various text formatting options (subscripts, superscripts, symbols, etc.). Previous versions removed those formatting codes from the lists, with the result that the legends might have been a bit more difficult to read.
     
  • 3D plots of random points have been improved a bit. Previous versions included roundoff errors with drawing grid lines.
     
  • Added an option to draw solid white polygons for the sides of 3D contour plots, extending from the edges of the surface to the XY plane. These polygons obscure the underside of the surface, and in many cases add clarity to the plot.
     
  • Bug fix: Version 1.7.3 came close to solving problems with using patterned line styles with a large number of points, but didn't quite get there.
     
  • Bug fix: Multiple X axes settings (set with Options>Multiple Axes) were not saved to DPlot files properly. Also related to multiple X axes: secondary X axis label was not placed correctly in metafile output.
     

16 October 2002
DPLOTLIB.DLL

Made several changes to the VB demo so that it will run either as a compiled program (worked before) or uncompiled within the VB environment (didn't work).

10 October 2002
DPLOTLIB.DLL

Removed compiler-specific features from FORTRAN examples to the extent possible. Distribution now includes demo examples for Absoft FORTRAN, Compaq Visual FORTRAN, and WATCOM FORTRAN.

21 September 2002
Version 1.7.3

  • You may now have 32 open documents (plots). Previous limit was 8.
     
  • Label Points menu command now allows you to automatically jump to a point with a specified X value, rather than using the horizontal scrollbar to scan through the points. This is particularly useful with large data sets. Similarly, added options for placing the label at the point with the maximum or minimum Y value.
     
  • For programmers, added an options parameter to the TextPointLabel command that allows you to specify points as described above. Options also allows you to specify the X and Y coordinates for the label text as relative offsets from the labelled point, rather than absolute position.
     
  • If you previously used PI fractions or PI multiples number formatting on either the X or Y axes, then the display of X, Y coordinates on both the Scan Points and Point Labels dialogs was a bit ugly (PI symbol was displayed as {\sp}). This has been corrected.
     
  • Fill Between Curves feature did not work with polar plots. This was intentional and due to a limitation in older versions that no longer exists. It now works as expected.
     
  • A bit of fine-tuning on axes adjustments with logarithmic scales and multiple independent Y axes. Previous release was correct, but tended to either clip one or more curves or have axis extents larger than necessary.
     
  • Corrected a couple of problems associated with plotting a very large number of points. If the plot contained enough points such that consecutive data points were scaled to the same location, the line drawing routine used for metafiles would skip over that point. This problem did not effect output to the display, printers, or bitmaps. For all output devices, line styles other than solid would be rendered as solid under the same circumstances (multiple data points scaled to the same physical location).
     
  • Changed the definition of "dotted" lines to 25% filled-in from the previous 50%. Using the old definition with line widths greater than 1 dot resulted in solid lines. If this change presents a problem for anybody, of course let us know and we'll likely add a new line style.
     
  • Bug fix: Equal Intervals command caused DPlot to crash if the selected curve consisted of only 1 data point or if the X values for the first and last point were equal. Both of these situations now display an error message rather than bombing.
     
  • The equation parsing menu commands (Y=f(X), X=f(T),Y=g(T), and Z=f(X,Y)) now allow you to specify angles in degrees or radians. Previously you were required to use radians. So you can now plot, for example, Y=sin(X) from X=0 to 360 degrees rather than Y=sin(PI*X) from X=0 to 2.
     
  • File type D (multiple columns) used an arbitrary line length of 224 characters to read multi-column files. Depending on the number of significant figures used in the file and/or the width of each column, this might have resulted in DPlot reading fewer columns than the file contained. The maximum line length has been increased to 1024 characters. This will most likely be changed to an unlimited length in a future version.
     
  • Bug fix: If an additional curve was generated/created/read from a file while zoomed in, and you then used the Multiple axes command to associate the new curve with a second Y axis, DPlot crashed. This release solves the problem by zooming out when the Multiple axes command is used in this way.

30 August 2002
Version 1.7.2

  • Fractions number formatting now draws fractions using smaller, shifted characters and generally has a much better appearance.
     
  • Added an option to control print orientation (landscape or portrait) to the FilePageSetup DDE command.
     
  • Added CurveLabel and Stat_LimitsAsCL DDE commands.
     
  • Curve labels (see Legend/Labels command on the Text menu) may now be up to 40 characters in length.
     
  • Dense Grid Lines selection is now properly saved to preference files.
Bug Fixes
  • Corrected a few problems with Dense Grid Lines. If you had previously specified a tick mark interval to use before selecting Dense Grid Lines, this feature did not work properly. Also, if the tick mark interval was small enough that DPlot would skip drawing numbers at one or more intervals (to prevent numbers from overlapping), the dense grid lines associated with the skipped intervals were not drawn. Both of these problems are fixed.
     
  • Creating a new 3D plot while an XY plot window was open fouled up the data structures for the XY plot and made it unusable.

25 August 2002
Version 1.7.1

  • Added /nonag commandline switch to eliminate the startup nag dialog for the evaluation version. The primary reason for adding this switch is to allow the C and Visual Basic demo programs to work properly with the evaluation version. It is not recommended for general use as it will hide the remaining evaluation period from the end user.
     
  • Added Triangle plot option. See example file ex14.grf in the distribution.
     
  • Fixed a precision problem with the Add a Constant to Y and Multiply Y menu commands that resulted in the operation not being performed on the first and/or last points in a curve.
     
  • Fill Between Curves now allows you to select a single curve. In this case the area formed by connecting the first and last points in the curve is filled with the selected pattern. In this way you can create arbitrarily complex shaded areas on your XY plots.
     
  • Added menu commands (see View menu) to hide/show curves, which might be useful on crowded plots. These features are also available via drop-down menu when right-clicking on the legend.
     
  • Added Move/Copy Curves command (see Edit menu), which allows you to easily move or copy multiple curves from one document to an existing or new document. If all curves are moved (rather than copied) from a document, the document window is automatically closed.
     
  • Added HideCurve, ShowCurve, and MoveCurves DDE/macro commands, which correspond to the new menu commands mentioned above.
     
  • Added FileNewEx DDE/macro command, which allows you to set the caption of the new document and control whether this document becomes active or not. This is a handy addition if your application uses multiple MoveCurves commands to copy curves from several documents to a single new document.
     
  • Fixed a bug with commandline options. Previously if you specified a preferences file using the /s switch, and that switch was the last parameter specified, then the changes dictated by the preference file did not take effect until you performed some action that caused the plot to be redrawn.
     
  • User-specified tick mark intervals were not saved to preference files. If you specified user-defined tick mark intervals before saving a preferences file, DPlot might have crashed when later re-opening that file due to the tick intervals being set to 0.
     
  • Plot extents (specified with Extents/Tick Marks/Size command) were not saved to preference files. This omission was by design, but a friendly user talked us into it.
     
  • Several minor formatting changes to new box-and-whisker plots and dot graphs, plus one bug fix: the lower limit of the box on median-based box-and-whisker plots was drawn in the incorrect location for all but the first data group.
     
  • Corrected a problem with contour plots built from random 3D points. In previous versions, the triangulation routine ungracefully exited if all input points were collinear. This was particularly a problem with the DDE interface, since the calling application might send data values one row or column at a time. In this version DPlot checks for all points being collinear and skips the triangulation (and doesn't attempt to produce a plot).
     
  • Added XYZEx and XYZRegen DDE/macro commands. XYZEx is identical to XYZ with an additional parameter that specifies whether DPlot should triangulate and replot the data. This is especially useful if plotting from a Microsoft Excel VBA routine, which limits the maximum command string length to 256 characters. Previously if you used XYZ to plot data from a rectangular grid from Excel, you would most likely encounter errors due to all points sent being collinear. XYZEx is quite a bit more efficient than XYZ with large data sets, because you can instruct DPlot not to attempt to triangulate the data until you are ready to do so. XYZRegen forces DPlot to triangulate and plot the existing data. This command will most commonly be used after a series of XYZEx commands.
     
  • Added a method for retrieving the caption of the last document created in DPlot from another program. This feature is useful if your application moves data from one plot to another. Although you can specify the caption of a document when it is created, DPlot will append a numeric suffix to that caption if a document with the same caption already exists, so it is fairly easy for your application to become confused about which document is which. The following lines of Visual Basic code retrieve the last new caption and place it in the text of "<control>" (a text box or label):
     
    <control>.LinkTopic="DPLOT|System"
    <control>.LinkMode=2
    <control>.LinkItem="LastNewCaption"
    <control>.LinkRequest
    <control>.LinkMode=0

     
  • Corrected a scaling problem on XY plots that used multiple independent axes on a logarithmic scale. If the extents of either axis were not integer powers of 10, the second axis was often drawn incorrectly.

15 July 2002
Version 1.7

  • New data type and corresponding plot types: this version includes box-and-whisker plots and dot graphs for one or more groups of 1D data.
     
  • File>New menu entry now opens a submenu allowing you to specify the plot type: XY plot, 1D statistics plot, or 3D plot with random points. Previously it was not possible to start a 3D plot with random points from scratch in DPlot.

Several changes to 3D plots:
 

  • Corrected a problem with random 3D points. In previous versions, DPlot happily accepted two or more points with identical X and Y components. This did not cause any problems with the triangulation, which ignored the 2nd and all subsequent coincident points. However, this situation caused DPlot to crash when Generate mesh was selected. In this version DPlot removes points with identical X and Y components, and tells you it has done so.
     
  • Generate mesh now allows you to forego extrapolating values outside the triangular mesh.
     
  • Generate mesh allows you to specify the number of additional data points used to estimate partial derivatives at the input points. In most cases the default value of 4 works nicely. However in some cases more points are needed to smooth the resulting plot.
     
  • Improved several inefficiencies in the Generate mesh command, making this feature run considerably faster, particularly with a large number of input points and/or a large generated grid.
     
  • The same options for specifying axis extents, tick mark interval, and plot size that are available for XY plots are now also available for both 2D and 3D contour plots.
     
  • Added a Paste command for random 3D points. The Paste command assumes that the clipboard contains ASCII text representations of X,Y,Z triplets. These triplets will be added to an existing plot, and the plot will be re-triangulated.
     
  • Added XYZ macro/DDE command, which allows you to add one or more X,Y,Z triplets to an existing contour plot consisting of random 3D points.
  • Bug fix: Depending on the order that DPlot found Generate plugin dll's on your hard disk, the corresponding menu commands may have pointed to the incorrect plugin.
     
  • Bug fix: Corrected a minor problem with the custom color picker control that caused it to use the incorrect font the second time the control was created.

24 June 2002
Version 1.6.9.12

  • DPlot will now accept a "curve" consisting of a single data point, and allow you to create such a curve using Edit>Edit Data.
     
  • Added a text formatting option for enlarging one or more characters in a text string. This might be useful for equations, particularly those involving integrals or summations.
     
  • Text formatting options used in the title lines, axis labels, and legend are now also available for notations.
     
  • Added NumTicks and TickInterval macro/DDE commands.
     
  • For Visual Basic users, a new XYXY DDE command is considerably faster than all other VB methods of sending data to DPlot. Like the other methods, this command sends data values as character strings and so isn't as fast as sending binary data (as in the C demo), but for reasonable size data sets I believe you'll be pleased with the results. Thanks to Bill Bracco for the suggestion.

16 June 2002
Version 1.6.9.9

  • Several changes to the C and VB demo programs: The VB example contained a bit of outdated information that prevented the code from launching DPlot correctly. The VB example has also now been compiled so that users w/o VB can see what's possible. The C example now allows you to retrieve a bitmap of the plot last produced by the demo and displays that bitmap. This of course isn't particularly useful for the demo but may give you ideas for your own applications.
     
  • Eliminated a source of confusion in the Point Labels dialog box. In previous versions the label descriptions in the Select Label dialog were set to initial values and never updated, leading many users to believe that the curve number and point number selections were malfunctioning.
     
  • Corrected a bug in the rendering code for random 3D points drawn with shaded bands. In previous versions, triangles that were scaled to a height of 1 pixel caused a divide by zero error and crash.
     
  • Corrected two problems with text notations. Deleting the first notation caused DPlot to crash. Deleting a note that was "Button-activated" left the non-functioning button on the plot.
New macro/DDE commands:
 
  • AverageAndReplace is identical to AverageAllCurves, but deletes all pre-existing curves after finding the average.
     
  • InfoInterpolate displays the Interpolate dialog.
     
  • InfoScan displays the Scanning Points dialog for the selected curve.
     
  • MenuHide and MenuShow do exactly what you'd expect. If using MenuHide you should also hide the toolbar with ViewToolbar.
     
  • SetWindowPos allows you to set the size and position of either the main application window or of a child document. It also allows you to make the main application window "stay on top".

1 June 2002
Version 1.6.9.7

  • Bug fix. If Dense grid lines was selected on a log scale, and the upper extent of the scale was not an integer power of 10 (5, for example), then the intermediate grid lines were drawn outside the limits of the plot.

23 May 2002
Version 1.6.9.6

  • Minor fix to a bug introduced in 1.695: When presenting a list of curves in a list box, older versions displayed the entire legend text for a curve, including formatting codes for subscripts, superscripts, etc. Version 1.695 cleaned up those list entries by eliminating those formatting codes, but did a poor job of it. Under some circumstances this "fix" resulted in nonsense entries in the curve list.

21 May 2002
Version 1.6.9.5

  • Added a Z axis label input for contour plots. The label is only drawn for plots viewed in 3D with Draw Axes checked.
     
  • Added an option to always use the displayed colors for printed output (rather than using a separate printer color palette). See Options>General.
     
  • Text labels may now include bold, italic, and underline attributes as well as subscripts, superscripts, and symbols.
     
  • Added Microsoft Excel macro examples to the distribution.
Macros/DDE:
 
  • ForFilesIn may now be used to append files to the same document, rather than opening each file in a separate document window.
     
  • FileOpen, FileAppend, and the ForFilesIn macros handle long filenames a bit better than previous versions.
     
  • The Directory macro command now works correctly in conjunction with FileOpen and FileAppend.
     
  • Fixed macro editor so that opening too many document windows with a ForFilesIn loop will abort the macro, rather than pounding you with a continuous stream of error messages for all remaining files in the loop.
     
  • Added several new DDE/macro commands: Contour3D, ContourAxes, ContourGrid, ContourLevels, ContourView, GetPreferences and UseNameAsLegend. See the Help topic Executing DPlot commands from another application for more information.
     
  • Programmers may now add a series of DDE execute commands to the end of the data for your XTYP_POKE transactions when operating DPlot via DDE from another application. The main result of this change is that you may now completely control the appearance of a new plot generated by another program in a single step, without causing DPlot to generate needless document window updates. Programmers should see the demo.c demonstration program for an example.
Bug fixes:
 
  • In previous versions the "Use Name as Legend" feature did not work particularly well with the File>Append menu command, and resulted in a faulty legend.
     
  • Fixed a program-crashing bug that sometimes occurred when closing an XY plot window then opening a contour plot.
     
  • A roundoff error in the 3D routines caused an inconsistency in appearance between 3D and 2D views.
     
  • Tabstops in notations are handled a bit differently and should now be drawn correctly for all tabstop values. In previous versions the code was prone to clipping tabbed text if the tabstop value was not a multiple of 8.
     
  • Added imagehlp.dll to the distribution for Windows 95 users who do not already have this file. This change will not affect users of other operating systems.
     

27 March 2002
Version 1.6.9

  • For grain size distribution plots, you may specify which sieve size labels are drawn rather than allowing DPlot to make the decision for you. You can also elect to draw heavy dashed vertical lines at the material type boundaries. See Options>Linear/Log Scaling>Grain Size Options. Thanks to Jim Robertson for the suggestions.
     
  • Zoom is now enabled for 2D contour plots generated from random 3D points.
     
  • 3D data on a rectangular grid (as opposed to random 3D points) may now be saved as a CSV (comma-separated values) file.
     
  • The Specify Columns to Plot dialog for multi-column input files now shows the actual column headings (if present in the file) in addition to the less useful "Column 1", "Column 2", etc.
     
  • Unlimited number of text notations.
     
  • A new triangulation algorithm for random 3D points has been implemented and is insanely faster than the previous method for a large number of points. By way of example, triangulation of 100,000 points now takes about 1.6 seconds on a 1.4Ghz PC while the previous version took about 17 minutes for the same data. The comparisons are even more dramatic for larger data sets.
     
  • All contour plots now use the limits specified on the Contour Options dialog. Previously, shaded band plots divided the Z extents of the data evenly and ignored user input for limits.
     
  • You may now edit up to 16384 X,Y pairs using the Edit Data command. The previous version was limited to 1024 points.
     
  • The code now does a much better job of using the extents you specify with Extents/Tick Marks/Size.
     

17 February 2002
Version 1.6.7

  • Error bars. Errors may be expressed as absolute values or as a percentage of the amplitude.
     
  • Fixed a couple of bugs introduced in last interim release: Options>General options were not properly preserved, and unchecking "Use thousands separator" on the Number Formats dialog caused the program to crash.
     

6 February 2002
Version 1.6.4

  • Added interface for file export plugins. See the Help file for more information.
     
  • Licensed version is now distributed separately, and includes 5 new plugin modules that extend DPlot's functionality. See the Features page for more information.
     
  • 3D Plot changes:
    • Added a global option to automatically adjust the X, Y and Z scale factors of contour plots such that the plot is square in the XY plane and the Z extents appear to be roughly 1/2 that of X and Y. See the General command on the Options menu. This might be useful if you frequently plot data sets that have X and Y in different units or if the extents are quite a bit different. Previously, DPlot made the adjustment to X and Y scale factors automatically only if the X and Y extents differed by a factor of 10 or more. All scale factors may be changed on the Contour Options dialog, regardless of whether this option is set or not.
       
    • Added an Apply button to the Contour Options dialog that allows you to see the results of your changes without closing the dialog.
       
    • File type K (random 3D points) may now contain 3 title lines and X and Y axis labels.
       
    • DPlot now checks file type K (random 3D points) to see whether all data values lie on a rectangular grid. If so, it uses that information to triangulate the surface rather than the much more compute-intensive general purpose triangulation code that it previously used. For large data sets this change makes a huge difference in processing time.
       
    • Contour plot settings are saved to preference files. Thanks to Nolan Davis for all of these suggestions on 3D plots.
       
  • Commandline interface has been improved in that you are no longer limited to a single commandline parameter. You may now specify a preferences file in addition to multiple files to open. NOTE: The nag screen of the evaluation version prevents the commandline parameters from working correctly if DPlot is not already running. The licensed version (which does not display the nag screen) does not have this limitation.
     
  • Fixed a bug introduced in version 1.6 with the new Undo feature. "Data processing mode" did not work properly in that version. Thanks to Angela Eubanks for pointing out the problem.
     
  • And another Undo-related bug... inches/mm selection in the "Extents" dialog did not function correctly.
     

27 January 2002
Version 1.6.2

A couple of bug fixes to the plugin interface:
  • If a fileimport plugin failed because the X and Y arrays were too small, DPlot botched up the attempt to resize those arrays and try again.
     
  • Line and symbol styles for an existing plot were wiped out when calling a plugin under some circumstances.
     

14 January 2002
Version 1.6

  • Undo feature allows you to undo the last 8 operations. Since individual macro commands cannot be undone, a Saveundo macro command was added to preserve the plot state before running macros.
     
  • You may specify the frequency of symbols, rather than automatically drawing symbols at every point.
     
  • Added an option to each of the function commands (Y=f(X), etc.) to prevent divide by zero errors. DPlot has always gracefully trapped a divide by 0. The difference is that you may now automatically shift the independent variable by a small value so that the error doesn't occur. This might be useful for plotting functions that would otherwise result in an error at a specific value, e.g. sin(x)/x at x=0.
     
  • Added "Pi Multiples" and "Pi Fractions" number formatting. Thanks to Brian Smither for the suggestion.
     
  • DPlot accepts "PI", "pi", or "Pi" as the constant 3.1415926... in each of the 3 function generation menu commands.
     
  • Relaxed the test for constant spacing a bit. Some operations (FFT in particular) require that a data record have a constant spacing, so DPlot checks for this quality when you use one of those commands. For a very large number of points (1 million or so), there is an inherent precision problem with determining whether the entire record has a constant spacing. (This is not a problem with digital recorder files or other file formats which by definition have a constant spacing.) In this case DPlot would report "This feature requires the data values to have a constant spacing. Note: This error message may be the result of inadequate numerical precision." The error message is correct, but of course doesn't solve the problem. This version will successfully test at least 2 million points for a constant interval.
     
  • Added X and Y scale factors to the contour plot options. Previously, DPlot drew 3D contour plots with the same scale for X and Y, regardless of the extents in those directions. This might have resulted in an exceptionally narrow plot. Thanks to Nolan Davis for the suggestion.
     

12 December 2001
Version 1.5.2

  • You may now include subscripts, superscripts, and characters from the Symbol font (Greek characters, trademark symbols, etc.) in the plot title lines and axis labels.
     
  • Bug fix to Y=f(Y1,Y2) command and any other command that operated on 2 curves. Previous versions crashed in some circumstances due to a roundoff error. Thanks to Brian Smither for pointing out the problem.
     
  • Bug fix to zoom code. Previous versions were prone to crash when a plot used multiple Y axes.
     
  • Multiple-column format files had an arbitrary limit of 16 columns (X + 15 Y columns). This version has no limit (other than the maximum number of curves per plot, which is currently 100). Thanks to Henry Young for pointing out this problem as well as the zoom bug.
     
  • Paste code balked at trailing spaces in the text and reported a not-so-helpful "Error reading numbers".
     
  • Several menu commands have been tossed out in favor of a single input dialog for specifying plot extents, tick mark interval, and plot size. You can now specify a tick mark interval directly, which has been a confusing process in the past.
     
  • Better support for export of 2D contour plots to .PDF file using Adobe Distiller. Please note that PDF Writer produces decidedly chunky contour plots, and currently I have no idea what the problem is. In any case, Distiller doesn't have this problem and works quite well.
     
  • Fixed several problems with the commandline interface, which was broken in the last several versions.
     
  • Changed the file import plugin interface a bit to distinguish between allowing/disallowing the selection of multiple files for one plot. (As with all other file types, to select multiple files in the "Open" dialog box, press and hold the Shift key while selecting.) If you're interested in this sort of thing be sure to download the new plugin examples.
     
  • Print margins are saved to preference files (using File>Save Preferences).

14 August 2001
Version 1.5.1

  • Bug fix to Paste code. Previously the number of data sets that could be copied from the Clipboard was limited by the length of a character string used to read one row of values. This effectively limited DPlot to pasting between 3 and 13 new curves. That limitation is now removed, and you can paste up to 100 data sets from 101 columns (X in the first column). Thanks to Ross Ashman for pointing out the problem.
     

9 August 2001
Version 1.5

  • For instrumentation gurus - a fix for problem Pacific 5700 files. Alan Bell pointed out that some Pacific files claim 16 data segments though the file actually contains 15. In this release DPlot ignores the number_of_posttrigger_segments field in the header and uses the file size to determine the correct number of segments. Not an ideal solution, but this is about all we can do if the header info is wrong.
     
  • Fixed a problem with the header info in DPlot macros that was carried over from previous versions of DPlot. Distributed macros (as well as any you create) should work fine now.
     
  • A good suggestion from Nancy Strong: "Axes at 0" menu command forces axes to be drawn at X=0 and Y=0 (if those values are within the plot) rather than always drawing axes from the lower-left corner. This option applies only to linear X, linear Y plots.
     
  • You can plot a function X=f(T), Y=g(T), where T is an independent parameter. This compliments the Y=f(X) command nicely, but more importantly the formula features of DPlot (Y=f(X), X=f(T),Y=g(T), and new Z=f(X,Y)) do not require the presence of Microsoft Excel. This version of DPlot uses the MindFly Function Parser from Andreas Hartl to parse formulas. Big thanks to Andreas for this excellent tool.
     
  • DPlot can now work with 3rd-party plugins to read custom file formats or manipulate data in some way that is not currently handled by DPlot. Source code is provided with plugin examples.
     
  • The big one... DPlot goes 3D. DPlot can produce 2 types of contour plots - contour lines or shaded color bands representing different Z values. Input data can be random 3D points or Z values on a rectangular grid. Random 3D values can be read from a file, pasted from the Clipboard, or sent to DPlot via DDE (see the DEMO.EXE program in the /C folder below DPlot). Gridded data can be produced via the new Z=f(X,Y) menu command or, again, via DDE.

    For random points, DPlot produces a convex mesh of triangles and assumes each triangle is planar. Values outside the mesh are not plotted.

    Starting with randomly-spaced points, you can generate a smoother interpolated grid using the "Generate Mesh" command on the Options menu.
     

$
60.
00
 
RUNS ON
Windows 7, 2008,
Vista, XP, NT,
ME, 2003, 2000,
Windows 98, 95
RSS feed
Copyright © 2001-2010 Hydesoft Computing, LLC