Autoplot Application (v2018a_7)
SOHO Solar Wind Speed, above plot showing data availability at CDAWeb.
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 Autoplot2018a 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.
Single-jar version, autoplot.jar, can be run without network access and from the command line.
Mac DMG Release is available.
Bugfixes (2018-07-19 r22596):
- rte_1148065736: check for bad division with Huge Scatter.
- poor feedback when bundle parameter was used with ascii ("bad parameter: rank2" was indicated).
- binary data source editor uses scrollbars when there are many columns.
- make export data set more consistent between types, calling maybeMkdirs so the folder is created.
- support where CSV column header contains units, like "50 Hz"
- 2004: HAPI editor panel would sometimes switch servers, because of thread mishandling.
- completions on Jython variables where constructor is used works again.
- improve error feedback when dataset('6 to 7') was passed into histogram2d, where the argument was a rank 0 enumeration and not a range.
- null pointer with hapi caching corrected.
- export-to-CDF failed when TT2000 data had fill value. Thanks, Ivar!
- 2002: gt(r0ds1,r0ds2) is now supported, avoiding confusion. Thanks, Kristoff and Ed!
- in pngwalk tool, autorange after loading vap if the autorange flag is set.
- rte 1055121094: exporting ephemeris data to qds, when data column contains format specification. Thanks fallegrini!
- tweak formatting used when printing numbers in metadata tab. Thanks, Ivar!
- when index lists are used to access high-rank dataset, check that all lists have the same length. Thanks, Ivar!
- 2001: CDAWeb skips over 1-record CDF files to avoid bug where time-varying DEPEND_1 is lost.
- With CDAWeb, when DEPEND_1 was time-varying, incorrect warning message about length mismatch is no longer shown.
- corrections to new expandToFillGaps filter.
- ASCII editor panel would incorrectly set depend0units.
- support for https das2servers. Thanks, Chris!
- 1995: corrections to code which aggregates qstreams containing nominal data.
- 1996: correction to caching code which would fail to unload data from memory to hard disk, causing out-of-memory exceptions.
- rte_0761821100: CDF gui attempts to clarify error message about rank 2 DEPEND_0. Swap description of parameter when X or Y tab is selected.
- drop the render type property when param[:,0] is read.
- minor tweaks to HAPI GUI, to improve transparency.
- output console's click-on URL is too easy to trigger, causing confusion. Make double click.
- GUI logger would get extraneous events because of Autoplot printing thread. Check for these and log with lower verbosity.
- 1994: orbit timerange could not be used as the default timerange in scripts, because it would not recognize the correctly formatted time.
- 1987: remove incorrect warning about width and height parameters used with -v in AutoplotServer.
- AutoplotDataServer hapi-csv response is now properly streamed.
- FormatDataSet properly trims HAPI responses, used by AutoplotDataServer.
- 1861: back off automatic conversion until Jython 2.5 is used, Java 2.2 is too aggressive in using the conversion and old scripts were breaking.
- format to CDF properly supports rank 2 depend 1 and supports rank 4 data.
- HAPI export format properly formats to HAPI 2.0, which requires "Z" in timetags.
- 1871: recent entries of timeranges and operations were lost because of new code that appends the recent file using a move.
- use ISO-8859-1 encoding with Jython output, so that micro symbol paints properly.
- 1988: link command, used all over the place, would always copy Z when link(x,y,Z) was used, wasting tons of space...
- 1989: msec vs ms in testing. Canonical units (e.g. ms) are always displayed.
- "degrees" and "Degrees" are now equivalent.
- 1987: revisit height and width parameters of AutoplotServlet. Thanks, Jon!
- horizontal slicer is now able to "plot above", though there is no way to swap out the label.
- export to HAPI (and AutoplotServlet HAPI output) is properly marked as 2.0.
- rfe643: allow autoplot_data/config/jsyntaxpane.properties to reset the colors used for the editor, allowing dark editors.
- DasAxis reference can now be a comma-separated list of datums.
- FileStorageModel now has getNames(datumRange) and getRoot(), to support use in IDL.
- catch when CDF has validmin>validmax, and print a warning rather than refusing to plot the data.
- allow pngwalk digitizing when zoomed in on image.
- time range controller has "rescale" property, which is accessible to scripts.
- rfe641: HAPI caching experiment where request is broken up into daily requests so that caching is more effective.
- SeriesRenderer can now be used as a delegate to allow use in scripts.
- More anchor positions, including OutsideS and OutsideSSW, OutsideW.
- DataSetBuilder has new nextRecords function, which accepts multiple records, to avoid confusion caused by use of putValues function.
- U. Iowa group's RangeLabel and CollapseSpectrogramRenderer is now compiled in.
- bug2000: abs now returns units when the data is ratiometric.
- add more positions for annotations, like "West" and OutsideSSE.
- allow no-record DELTA_PLUS, issuing a warning, to aid in development.
- expandToFillGaps process added.
Less recent features:
- tweaks to HAPI export, including adding "hapi" in the path and adding documentation to GUI.
- rfe638: export-to-idlsav supports rank 2 data. Thanks, cj2g13!
- tweaks to the static html file created for pngwalks, which improves performance over slow networks.
- logspace function added. Thanks, Kristoff!
- DataServer implemented as servlet to improve performance. Thanks, Bob!
- DataSetBuilder nextRecord supports rank 1 string data.
- clicking on http and https links in the console tab will point the browse (Firefox,etc) to the link.
- Radio JOVE community AJ4CO_RAINBOW colorbar is added, using a subset of its 4096 colors. (4096 color version should be available soon.)
- CSV Data Source supports streaming. AbstractDataSource has "getInputStream" method to support streaming subclasses.
- medianFilter supports rank 2 data, performing the operation on slices of the 1st axis.
- 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.