npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

js9

v3.8.0

Published

astronomical image display everywhere

Downloads

687

Readme

My software career comes to an end on July 1, 2022 and with it will end active development of JS9. Please plan accordingly. Eric

DOI

DeepScan grade

Twitter

JS9: astronomical image display everywhere

JS9

What does it do?

  • display FITS images, binary tables, data cubes, and multi-extension files
  • colormaps, scaling, pan, zoom, binning, blending, print, export ...
  • region support: create, manipulate, import, export, ...
  • drag and drop images, regions, catalogs
  • server-side and local analysis using the JS9 public API
  • control JS9 using scripts from the Linux shell or Python
  • runs on Macs, Linux, Windows, iPads, iPhones, ...
  • runs as a Desktop app in all modern browsers
  • utilizes WebAssembly (FITS processing at near native speed!)

How can I try it out?

Go to JS9 web site and drag a FITS data file onto the JS9 display:

https://js9.si.edu

You can even specify a remote FITS file and associated image display parameters as part of the URL:

https://js9.si.edu/js9/js9.html?url=https://hea-www.cfa.harvard.edu/~eric/coma.fits.gz&colormap=cool

The JS9 web site also contains on-line documentation, demos, and release downloads.

To install or not to install ...

For many users, there is no need to install JS9: simply use the JS9 web site to display your data. You can even upload your FITS files to the web site and run our server-side analysis.

Installing JS9 allows you to create your own web pages, tailor site parameters, and add your own local and server-based analysis tasks. Grab the latest version from JS9 on GitHub:

git clone https://github.com/ericmandel/js9

Load a local page into your browser:

file:///path/to/js9/js9.html

(NB: Chrome needs to run with the --allow-file-access-from-files switch to use the file URI.)

For Desktop use, install Electron.js and use the js9 script to start the Desktop app and load an image:

js9 -a ~/data/m13.fits

For more advanced support (web-based support, support for handling large files), build the JS9 helper and install JS9 in a web directory:

# configure location to install the JS9 web files,
# where to find cfitsio library and include files,
# where to install programs and scripts,
# what sort of helper to build:
./configure --with-webdir=[path_to_web_install] \
            --with-cfitsio=[path_to_cfitsio]    \
            --prefix=[path_to_prog_install]     \
            --with-helper=nodejs

# the usual ...
make
make install

# start helper
cd path_to_web_install
# in the bash shell:
node js9Helper.js 1>~/logs/js9node.log 2>&1 &
# or, in the tcsh shell:
node js9Helper.js >& ~/logs/js9node.log &

What about scripting?

The js9 script allows you to control a JS9 web page from the Linux command line using the JS9 Public API (scripting requires installation of JS9 and either node.js or Electron.js):

js9 Load chandra.fits '{"scale":"log","colormap":"red","contrast":5.78,"bias":0.15}'
js9 Load spitzer.fits '{"scale":"log","colormap":"blue","contrast":6.3,"bias":0.54}'
js9 ReprojectData chandra.fits

Python users can install pyjs9:

git clone https://github.com/ericmandel/pyjs9
...
import pyjs9
j = pyjs9.JS9()
j.Load('chandra.fits', '{"scale":"log","colormap":"red","contrast":5.78,"bias":0.15}')
j.Load('spitzer.fits', '{"scale":"log","colormap":"blue","contrast":6.3,"bias":0.54}')
j.ReprojectData('chandra.fits')

What's the license?

JS9 is distributed under the terms of The MIT License.

What's the recent release history?

DOI v3.8.0   (06/21/2022)

DOI v3.7.0   (05/16/2022)

DOI v3.6.2   (01/03/2022)

DOI v3.6.1   (08/16/2021)

DOI v3.6.0   (07/30/2021)

DOI v3.5.0   (06/01/2021)

DOI v3.4.0   (05/05/2021)

DOI v3.3.1   (12/15/2020)

DOI v3.3.0   (12/14/2020)

DOI v3.2.0   (11/06/2020)

Who's responsible?

Eric Mandel, Alexey Vikhlinin

Center for Astrophysics | Harvard & Smithsonian