forked from ericmandel/js9
-
Notifications
You must be signed in to change notification settings - Fork 1
/
js9pngvsfits.html
executable file
·106 lines (103 loc) · 4.89 KB
/
js9pngvsfits.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http:https://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=Edge;chrome=1" >
<meta name="viewport" content="width=device-width, initial-scale=1">
<link type="image/x-icon" rel="shortcut icon" href="./favicon.ico">
<link type="text/css" rel="stylesheet" href="js9support.css">
<link type="text/css" rel="stylesheet" href="js9.css">
<script type="text/javascript" src="js9prefs.js"></script>
<script type="text/javascript" src="js9support.min.js"></script>
<script type="text/javascript" src="js9.min.js"></script>
<script type="text/javascript" src="js9plugins.js"></script>
<title>JS9 pngvsfits</title>
</head>
<body>
<center><font size="+1">
<b>JS9 Demo: PNG Representation Files vs FITS Files</b>
</font> </center>
<p>
<b>NB: The use of PNG representation files is deprecated in favor of
fits2fits large file support.</b> See
<a href="help/repfile.html">Dealing with Large Files</a> for more information.
<p>
X-ray archives present special problems for displaying data. Instead
of images pixels, X-ray data files consist of detected photons stored
in FITS binary tables. These can be hundreds of megabytes in size,
regardless of the image dimensions. Downloading (and then binning)
these tables on the fly can be painfully slow.
<p>
To remedy this situation, JS9 supports a special PNG <b>representation
file</b>, explicitly tied to the original FITS file. The idea is that
you can create a representation image from the original FITS data and use
that file for display in JS9, while still supporting server-side
analysis using the original file.
<p>
Other benefits include:
<ul>
<li> The compressed PNG representation file will be decompressed
automatically by the browser's optimized PNG support code.
<li> The representation file takes less memory than a downloaded FITS image.
<li> PNG files can be generated statically or dynamically.
<li> PNG files can be tailored to the specific observation (compare the 3c58 files).
</ul>
<p>
See <a href="help/repfile.html" target="_blank">The PNG Representation
File</a> for more information.
<table cellspacing="30">
<tr valign="top">
<td>
FITS binary tables (first three are compressed):
<ul>
<li> <a href='javascript:JS9.Load("fits/casa.fits.gz", {fits2png: false});'>CAS-A (Chandra)</a>
<li> <a href='javascript:JS9.Load("fits/ngkper.fits.gz", {fits2png: false, scale: "log"});'>gkper (Chandra)</a>
<li> <a href='javascript:JS9.Load("fits/3c58.fits.gz", {fits2png: false});'>3c58 (Chandra)</a>
<li> <a href='javascript:JS9.Load("fits/snr.fits[events][pi==pha]", {fits2png: false, scale: "log"});'>CTB 109 (Einstein, with 'pi==pha' filter)</a>
</ul>
</td>
<td>
FITS files with dynamic fits2png conversion:
<ul>
<li> <a href='javascript:JS9.Load("fits/casa.fits", {fits2png: true}, {display: "myJS9"});'>CAS-A (Chandra)</a>
<li> <a href='javascript:JS9.Load("fits/3c58.fits", {fits2png: true}, {display: "myJS9"});'>3c58 (Chandra)</a>
<li> <a href='javascript:JS9.Load("fits/ngkper.fits", {fits2png: true, scale: "log"}, {display: "myJS9"});'>gkper (Chandra)</a>
<li> <a href='javascript:JS9.Load("fits/snr.fits", {fits2png: true, scale: "log"}, {display: "myJS9"});'>CTB 109 (Einstein, filtering via Analysis menu)</a>
</ul>
</td>
</tr>
<tr valign="top">
<td>
<div class="JS9Menubar"></div>
<div class="JS9"></div>
</td>
<td>
<div class="JS9Menubar" id="myJS9Menubar"></div>
<div class="JS9" id="myJS9"></div>
</tr>
</table>
<p>
JS9 Demos:
<ul>
<li><a href='js9basics.html'>JS9 Demo: the basics</a>
<li><a href='js9bespoke.html'>JS9 Demo: web page control of JS9</a>
<li><a href='js9sizes.html'>JS9 Demo: setting the size of the JS9 display</a>
<li><a href='js9large.html'>JS9 Demo: support for large FITS files</a>
<li><a href='js9plugins.html'>JS9 Demo: adding plugins to JS9</a>
<li><a href='js9imexam.html'>JS9 Demo: the imexam plugin for JS9</a>
<li><a href='js9blend.html'>JS9 Demo: image blending</a>
<li><a href='js9cat.html'>JS9 Demo: overlaying catalogs</a>
<li><a href='js9panzoom.html'>JS9 Demo: pan and zoom</a>
<li><a href='js9rgb.html'>JS9 Demo: RGB composite images</a>
<li><a href='js9multi.html'>JS9 Demo: independent instances of JS9</a>
<li><a href='js9analysis.html'>JS9 Demo: remote data analysis</a>
<li><a href='js9onchange.html'>JS9 Demo: running tasks when a region changes</a>
<li><a href='js9create.html'>JS9 Demo: creating a JS9 instance dynamically</a>
<li><a href='js9preload.html'>JS9 Demo: preloading images into JS9</a>
<li><a href='js9bitpix.html'>JS9 Demo: displaying different FITS datatypes</a>
<li><a href='js9allinone.html'>JS9 Demo: using the all-in-one files</a>
<li><a href='js9pngvsfits.html'>JS9 Demo: PNG representation files vs FITS files</a>
</ul>
</body>
</html>