Autoplot Application (#{tag})
Perennial study of memory leaks yielded some nice results. Here is code for testing.
Autoplot attempts to allow plotting of data from many data sources, including remote CDF files and OpenDAP servers.
Datasets are identified with URIs, and by the URI's extension, data are loaded into the internal data model. Data are then
displayed by guessing the rendering method and axis ranges to provide a reasonable, useful view of the data. Data can then
be additionally processed with other operations like smooth and FFT, and Jython scripting provides a capable programming environment.
This is the Autoplot v2019a branch. This is an update to the production version containing bugfixes and minor new features.
Java 7 is now required. Java 8 will be required sometime soon.
Run with 4GB of memory (64-bit Java only): autoplot_4GB.jnlp
Single-jar version, autoplot.jar, can be run without network access and from the command line.
Mac DMG Release is available.
Bugfixes (2019-06-06 r23745):
- paste plots from clipboard was too restrictive in validity test. Thanks, Kris!
- correct runtime error when DasAnnotation couldn't load image file.
- "convert Jython to Java" didn't set the popup background color.
- 2166: ".../foo.jyds?param=" fixed, where empty parameters are treated the same as missing parameters, using default values.
- round of memory leaks testing. See https://github.com/autoplot/dev/blob/master/bugs/2054/stressTestForLeaks.jy
- rte 1625162004: runtime error because of units during transition
- contours renderer was painting the off-screen labels, degrading performance.
- Propagate USER_PROPERTIES through FFTPower so that Juno waveforms don't show extraneous %{USER_PROPERTIES} in title.
- 2127: .../mms1_feeps_srvy_l3_electron_20180928000000_v6.0.1.cdf?intensity_energy_bins[0] showed there was an issue. Thanks, Allison!
- 2164: mouse module (e.g. box zoom) feedback is restored. Thanks, Masafumi!
- 2149: experiments with autorange considering bindings.
Older Bugfixes:
- rfe678: mad function replaced with meanAverageDeviation, since median average deviation is also used for "mad."
- rfe681: support download of http://radiojove.org/archive/data/1556842548UT190501173508_HNRAO_1.spd. Thanks, Masafumi!
- 2159: new das2stream reader dropped the last record in test137 at U. Iowa.
- 2159: new das2stream reader would use DataSetBuilder, which would in some cases return a DDataSet where only 10% was utilized, causing memory problems.
- polar plot would result in NullPointerException if Z is not available for rank 1 X,Y,Z
- 2160: jyds script default timerange would reject.
- 2159: new das2stream reader reads in many 1-record joined data, wasting memory. Thanks, Darrelle!
- rfe677: display data on bundle of X,Y,Z didn't clip on Y. Thanks, Ivar!
- URI_Template's phasestart modifier was never implemented. Thanks, Bob!
- 2158: setItemAllLists( rank0, rank0, rank1) now reconciles the three properly. Thanks, Bill!
Features:
- Useful DasAxis reference property is now bound to the DOM.
- annotations now have "pointAtOffset" so you can back off the arrow head.
- experimental "convert Java to Jython" option in editor under developer, to assist me when testing Java fragments.
- total function now checks for high-rank DEPEND_2, for when the metadata is constant and can be preserved. Thanks, Jon N!
- rfe469: Contours renderer now supports +20m notation, to match axis, where a contour is drawn every 20 units.
- UByteDataSet has extra "collectString" method so strings can be extracted efficiently.
Less recent features:
- rfe681: http://radiojove.org/archive/data/1556842548UT190501173508_HNRAO_1.spd now loads despite 403 when the content is read.
- toTimeDataSet reconciles the rank, allowing rank 0 and rank 1 inputs for the time components.
- rfe469: Axis nodes have "tickValues" property which allows tick spacing and location to be specified manually.
- rfe680: Expect utility included now to support driving other applications like FTP and IDL.
Known issues:
- see Source Forge
- Bugs often have a four-digit ID and can be reviewed with https://sourceforge.net/p/autoplot/bugs/<ID>/.
- Features typically have a three-digit ID and can be reviewed with https://sourceforge.net/p/autoplot/feature-requests/<ID>/.
This completes the feature set for the new production branch. No major features will be added before branching this version.
A production branch will be started in a couple of weeks, and the "Start Autoplot" link at the top of
autoplot.org will run this version.
Feedback on the function and quality of this release is greatly appreciated!
Data is input from:
- ASCII files (.dat,.txt)
- CSV files (.csv)
- Binary files (.bin)
- CDF files(.cdf)
- Excel spread sheets (.xls)
- das2Streams (.d2s or .das2Stream)
- ViRBO's TSDS server
- CDAWeb data server (vap+cdaweb:)
- das2servers (vap+das2server:)
- QStreams (.qds), QDataSet on a das2Stream
- Plasma Wave Group das2 Server
- NetCDF files (.nc,.ncml)
- HDF5 files (.h5,.hdf5)
- DODs servers (.dds)
- Cluster Exchange Format files (.cef)
- Fits Format Files
- Images (.jpg, .png, .gif)
- Wav audio files (.wav)
This is not complete, and limitations include:
- Quantities of rank 3 dimensionality (e.g. flux(Time,Energy,pitch) are plotted by slicing.
- Quantities of rank 4 dimensionality (e.g. flux(Time,Energy,azimuth,sector) are plotted by slicing twice.
autoplot.org is the wiki website, and contains
more information than this launch page.