|
JS9 brings astronomical image display to your browser and desktop:
- display FITS images, tables, data cubes, multi-extension files
- drag and drop FITS files and urls, PNG and JPEG images
- retrieve and display data from astronomical archives
- adjust the colormap and data scaling
- pan, zoom, and blink images
- perform image arithmetic, Gaussian smoothing
- blend images and apply RGB image filters
- configure mouse buttons and movements, touch events
- create and manipulate geometric regions of interest
- extend JS9 using plugins and the public API
- perform data analysis (local and server-side)
- configure and control JS9 via HTML elements in a web page
- control JS9 externally, from a command shell or Python
- print images, save images and sessions, multiple displays, ...
- simplified desktop app for Mac
Drag and drop a FITS astronomical data file onto the display and JS9
functionality immediately becomes available: zoom, pan, colormaps,
scaling, regions, WCS, image filters, smoothing ...
By extending JS9 with the plugin facility and the public API, you
can perform local analysis on the displayed image: click
the Plugins tab, create a region, move it around ...
Images loaded on the server, loaded via proxy (File menu), or uploaded
(Analysis menu) all support server-side analysis. Results are
displayed in your browser: click the Analysis tab, choose a
task, create a region, move it around ...
Extend JS9 with
Plugins,
using the
JS9 Public API
to perform event-driven, local analysis. Create a region, move it around ...
Region Stats create, click, move, or resize a region to see stats
|
3dPlot create, click, move, or resize a region to see 3d plot
|
X Projection create, click, move, or resize a region to see projection
|
Y Projection create, click, move, or resize a region to see projection
|
web page configuration:
multiple displays:
plugins:
colors:
data analysis:
FITS support:
not often needed:
Recent Public Releases:
Release 2.5 (08/30/19) a checkpoint release with a few bug
fixes, in preparation for widespread ES6 upgrade edits.
Release 2.4 (07/15/19) lots of work on the desktop version,
including direct access to local data files and the ability to merge
shared tools.
Release 2.3 (05/01/19) a wealth of UI improvements
(especially regions and menus), a smattering of bug fixes, and a
cool colormap-generating plugin.
Release 2.2 (10/09/18) adds support for synchronized
images, separate/gather images, mosaic images, user-defined and
Mac-style menus, browser-based counts in regions, coordinate
grids.
Release 2.1 (05/10/18) adds a graphical toolbar plugin, the
ability to separate and gather displays, load colormaps, create
light windows, and many improvements/fixes for binning and regions.
Release 2.0 (09/27/17) use WebAssembly where possible to
approach native processing speed, upgrade web site (https://js9.si.edu),
many aesthetic improvements.
For more details, see the ChangeLog.
JS9 is distributed under the terms of The MIT License.
The JS9 current release tar file is available here:
Untar this file to display FITS images with all essential
functionality.
Install JS9
to add functionality such as server-side analysis.
To run the demo pages, download the data tar file here:
The latest bug fixes and enhancements are available on GitHub:
Clone JS9 from GitHub once and then pull updates at any time:
git clone https://github.com/ericmandel/js9
git pull
For Mac users, a simplified desktop app is available on GitHub:
The app provides an easy way to get started with a GUI-based desktop
version of JS9, but with some limits on functionality.
In addition, the pyjs9 Python interface is available on GitHub:
It supports
communication
with JS9 using the
public API.
We gratefully acknowledge the technologies that power JS9:
- HTML5 for image display and most everything
- jquery for programming ease (jquery.com)
- emscripten for C-to-JavaScript (emscripten.org)
- fabric.js for 2D graphics (fabricjs.com)
- dynamic drive for light windows (www.dynamicdrive.com)
- flot for plotting (www.flotcharts.org/)
- swis for jquery.contextMenu (swisnl.github.io/)
- arrive.js for MutationObserver (github.com/uzairfarooq/arrive)
- spin.js for spinner support (spin.js.org/)
- Marc J Schmidt for CSS element queries (github.com/marcj/css-element-queries)
- HEASARC for CFITSIO (heasarc.gsfc.nasa.gov/fitsio/)
- IPAC for Montage (montage.ipac.caltech.edu/)
- SAO/TDC for WCS lib (tdc-www.harvard.edu/wcstools/)
- Mark Calabretta for HEALPix (www.atnf.csiro.au/people/mcalabre)
With important suggestions (and sometimes code) from:
- Doug Burke, CfA (research-level testing)
- Brian Cherinka, JHU (multi-extension FITS, data cubes)
- Joseph DePasquale, STScI (image blending techniques)
- Karl Glazebrook, Swinburne (iPad support)
- Kenny Glotfelty, CfA (toolbar and toolbar icons)
- Matias Carrasco Kind, NCSA (Jupyter support)
- Kathy Lestition, CfA (EPO)
- Briehan Lombaard SAAO (telescope control)
- John Roll, Facebook (design philosophy, analysis plugins)
- Maria Henar Sarmiento, ESA (research-level testing)
- Pat Slane, CfA (needs of research vs. education)
- Oleg Smirnov, Rhodes University (Jupyter, large file support)
- The Science Education Department, CfA (EPO)
JS9 development is supported by
Smithsonian Institution,
the Chandra X-ray Science Center (NAS8-03060),
and
NASA's Universe of Learning (STScI-509913).
|