GithubHelp home page GithubHelp logo

kryndex / js9 Goto Github PK

View Code? Open in Web Editor NEW

This project forked from ericmandel/js9

0.0 2.0 0.0 128.57 MB

astronomical image display everywhere

Home Page: https://js9.si.edu

License: Other

JavaScript 76.20% Makefile 0.29% HTML 6.54% Shell 0.72% C 14.94% C++ 0.20% M4 0.09% CSS 1.00% Python 0.01%

js9's Introduction

DOI

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, mobile apps are coming ...
  • utilizes WebAssembly, if present (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

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: 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 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 generate js9 script:

./mkjs9 -q

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
node js9Helper.js 1>js9node.log 2>&1 &

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.

Who's responsible?

Eric Mandel, Alexey Vikhlinin

Harvard-Smithsonian Center for Astrophysics

js9's People

Contributors

ericmandel avatar briehanlombaard avatar dougburke avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.