Autoplot Application (20170414a)
Tabs are shown in Jython editor now, and can be used as Jython indentation character. This was a bit painful to figure out, and the upper screenshot shows where the wrong method was used, before a GitHub version of the editor (JSyntaxPane) was modified instead.
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 Autoplot2016a 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 (2017-04-13 r20667):
- .html extension claimed for use for HTML tables. As OpenDap is not used often and it was reserved to avoid confusion with it.
- Html export format restored after it was accidentally removed from available options.
- Digital renderer properly handles formats like "%d mph" and rank 0 rendering (where location is not known) works more like rank 1, using format and align.
- PDS-PPI node now gets data from http://pds-ppi.igpp.ucla.edu.
- correctly handle pngwalk URIs with "?timerange=Apr+2017"
- pitch angle distribution renderer finally uses curved pieces to draw, instead of trapezoids. Thanks, Ed!
- reduce verbosity of "uh-oh, span used on ordinal like month, day" warning. I don't see that there's a problem with this.
- 1809: kludge in proper handling of signature for addMouseModule
- special handling of parseDecimal("NaN").
- improve handling of space and umlaut (¨) in pngwalk file names.
- rte_0746124665: George saw path that was resulted in NullPointerException.
- one-arg join(ds) was deleted at some point, and is now replaced. Thanks, George!
- HAPI export supports rank 3.
- bundle(ds1,ds2) correctly handles DEPEND_1 and DEPEND_2 when bundled datasets have equivalent values.
- correction to ascii formatting when microsecond resolution is used. Thanks, Kristoff!
- slice2 and slice3 preserve NAME property.
- bugfix: LocalFileObject write capability didn't check to see if it could create a file, with the QC stuff in PNGWalk.
- 1804: trim off-by-one error corrected.
- 1802: checkIsotropic could trigger before axes were sized with AutoplotServer.
- Java 8 Javadocs supported in Jython completions.
- new CDF Jar file fixes problem where unused ThreadGroups were made.
- 1801: dataset iterator is inordinately slow, put in optimal loops for rank 1 data.
- interpolate and interpolateNN now have single-dataset interface as well as arrays. Thanks, Kristoff!
- BufferDataSet remove redundant check of reclen which was also miscoded, using remaining() instead of limit(), producing incorrect warnings.
- tca can be reset before entering the editor panel. Thanks, Kris!
- when bins are specified with ranges, use render type hint to request Nearest Neighbor Spectrograms.
- bugfix: in the case where the HAPI dataset is just one day, the discovery range would be the day before the data range, making it a poor choice.
- PDS/PPI uses https now. Editor properly sets the parameter when returning to the editor GUI.
- downloadResourceAsTempFile now includes http or https (or ftp) in generated filename.
- getConvertibleUnits replaces getConvertableUnits (spelling error), and getConvertibleUnits now sorts the units.
- trimStrideWrapper dropped metadata.
- Units.getAllUnits would return a list of strings when it's declaration indicated that it would return a list of Units. Thanks, Jon!
- RTE reports (and provide feedback) must now submit to jfaden.net:80, not jfaden.net:8080, because of firewall issues.
- 1794: correction to branch when github is accessed.
- some spectrogram and color scatter assumed data and colorbar zunits were the same.
- https://bugs-pw.physics.uiowa.edu/mantis/view.php?id=478: ascii time transfer types could not have differing units.
- test100 showed where an immutable dataset was modified with the "hanning" filter.
- &y=bgsm[:,1] was unnecessarily URL-encoded, reducing readability.
- where parameters list was incorrect when the HDF5 file contained structures
- link(x,y,z) dropped z, when x y or z is an object (not dataset).
- issue a warning when das2stream units change, which can cause problems.
- where with HDF5 files containing parameters with dots in the name was never tested.
- where with HDF5 files containing structures was never tested.
- csv editor panel has selection for delimiter.
- corrections to HAPI reader, which was broken after rank 2 DEPEND_1 support was added.
- addDataPoint.jy script updated to use DataPointRecorder (not DataPointRecorderNew), and supports keystroke mode.
- log "ImageIO used to create" at less than info, to avoid clutter in server logs.
- rte_1490216564: don't throw runtime error when taskSize is zero, just ignore it.
- 1785: unable to format bundle to CDF. (Append is now handled properly.) Thanks, Kristoff!
- 1789: PngWalkTool correct feedback about writing to writable fs. The code didn't distinguish between Read-Only and Read-Write, and assumed that local filesystems were read-write. Thanks, Sebastian!
- rte_0147649225: fall back after failing to find "field6" in bundleDescriptor, because HAPI metadata was mistaken for Rich ASCII.
- rte 0857617456: Null pointer when selecting time field type but time format column has never been set. Thanks, Shiva!
- corrections to format to .wav gui, which wasn't initialized properly to indicate automatic scaling.
- digitizer DataPointRecorder "new" operation fires dataset update event. Thanks, Kris!
- bugfix: vap+cdaweb:ds=IM_K0_SIE&id=SI_PIXELS had image>THUMBSIZE>50 for the RENDER_TYPE, which Autoplot doesn't support as "image"
- Experimental support for rank 2 DEPEND_1 datasets with HAPI. HAPI uses sampleStartDate for discovery.
- check for vap+internal:data_1,data_2 when switching to mash-up
- 1754: Correctly support http://autoplot.org/data/AMSR_E_L3_SeaIce6km_B06_20070307.hdf.gz
- subtract filter added to remove confusion with diff, which is finite differences.
- Jython editor now allows tabs to be used instead of spaces, when "tabIsCompletion" is false.
- Jython editor now shows tabs, which are syntactically different than spaces.
- 1787: add text field so that orbit number can be entered directly.
- Introduce "gridIrregularY" to replace old LGrid.rebin codes.
- TimeRangeEditor keeps track of last spacecraft used for orbits.
- JUNO Perijove intervals added.
Less recent features:
- Data Mash Up GUI has bundle operator so that events lists can be constructed.
- Introduce high-rank trim, so you can trim on any index now.
- HAPI Server bins can have either centers or ranges specified.
- HAPI Server support for enumerated data (Strings) supported.
- 1779: refactor to create action "Edit Plot"->"Replace plot with clipboard plot"
- metadata now has "copy value" popup menu item.
- support ds[:,1] as well as ds&slice1=1, so that X and Y can be components of vectors.
- 563: HDF and CDF support X and Y datasets. Thanks Kris and others who have requested this.
- bugfix:negative DELTA_PLUS, which is invalid, is handled.
- layout tab indicates selected plot.
- export-to-hapi formats catalog and info responses.
- export-to-wav has timeScale parameter for scaling time tags, useful for auralizing B-Field data.
- AutoplotServlet simpleServlet has symbolSize to support sparklines.
- HAPI server allows external configuration (but it must be in /home/jbf/hapi/ for now!)
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.