/usr/share/doc/python-imexam-doc/html/imexam/example4.html is in python-imexam-doc 0.8.0-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
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 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Example 4 — imexam v0.8.0</title>
<link rel="stylesheet" href="../_static/imexam.css" type="text/css" />
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: '../',
VERSION: '0.8.0',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true,
SOURCELINK_SUFFIX: '.txt'
};
</script>
<script type="text/javascript" src="../_static/jquery.js"></script>
<script type="text/javascript" src="../_static/underscore.js"></script>
<script type="text/javascript" src="../_static/doctools.js"></script>
<script type="text/javascript" src="file:///usr/share/javascript/mathjax/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>
<script type="text/javascript" src="../_static/sidebar.js"></script>
<link rel="shortcut icon" href="../_static/imexam.ico"/>
<link rel="index" title="Index" href="../genindex.html" />
<link rel="search" title="Search" href="../search.html" />
<link href='https://fonts.googleapis.com/css?family=Source+Sans+Pro:200,600' rel='stylesheet' type='text/css'/>
<script type="text/javascript" src="../_static/copybutton.js"></script>
</head>
<body>
<div class="topbar">
<a class="brand" title="Documentation Home" href="../index.html"><span id="logotext1">im</span><span id="logotext2">exam</span><span id="logotext3">:docs</span></a>
<ul>
<li><a class="homelink" title="Astropy Homepage" href="http://www.astropy.org"></a></li>
<li><a title="General Index" href="../genindex.html">Index</a></li>
<li><a title="Module Index" href="../py-modindex.html">Modules</a></li>
<li>
<form action="../search.html" method="get">
<input type="text" name="q" placeholder="Search" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</li>
</ul>
</div>
<div class="related">
<h3>Navigation</h3>
<ul>
<li>
<a href="../index.html">imexam v0.8.0</a>
»
</li>
</ul>
</div>
<div class="document">
<div class="documentwrapper">
<div class="bodywrapper">
<div class="body" role="main">
<div class="section" id="example-4">
<h1>Example 4<a class="headerlink" href="#example-4" title="Permalink to this headline">¶</a></h1>
<div class="section" id="load-and-examine-an-image-cube">
<h2>Load and examine an image CUBE<a class="headerlink" href="#load-and-examine-an-image-cube" title="Permalink to this headline">¶</a></h2>
<div class="admonition note">
<p class="first admonition-title">Note</p>
<p class="last">image cubes are currently only supported for the DS9 viewer.</p>
</div>
<p>Image cubes can be multi-extension fits files which have multidimensional (> 2) images in any of their extensions. When they are loaded into DS9, a cube dialog frame is opened along with a box which allows the user to control which slices are displayed. Here’s what the structure of such a file might look like:</p>
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">astropy</span><span class="o">.</span><span class="n">io</span><span class="o">.</span><span class="n">fits</span><span class="o">.</span><span class="n">info</span><span class="p">(</span><span class="s1">'test_cube.fits'</span><span class="p">)</span>
<span class="n">Filename</span><span class="p">:</span> <span class="n">test_cube</span><span class="o">.</span><span class="n">fits</span>
<span class="n">No</span><span class="o">.</span> <span class="n">Name</span> <span class="n">Type</span> <span class="n">Cards</span> <span class="n">Dimensions</span> <span class="n">Format</span>
<span class="mi">0</span> <span class="n">PRIMARY</span> <span class="n">PrimaryHDU</span> <span class="mi">215</span> <span class="p">()</span>
<span class="mi">1</span> <span class="n">SCI</span> <span class="n">ImageHDU</span> <span class="mi">13</span> <span class="p">(</span><span class="mi">1032</span><span class="p">,</span> <span class="mi">1024</span><span class="p">,</span> <span class="mi">35</span><span class="p">,</span> <span class="mi">5</span><span class="p">)</span> <span class="n">int16</span>
<span class="mi">2</span> <span class="n">REFOUT</span> <span class="n">ImageHDU</span> <span class="mi">13</span> <span class="p">(</span><span class="mi">258</span><span class="p">,</span> <span class="mi">1024</span><span class="p">,</span> <span class="mi">35</span><span class="p">,</span> <span class="mi">5</span><span class="p">)</span> <span class="n">int16</span>
</pre></div>
</div>
<p>You can use all the regular imexam methods with this image, including imexam() and the current slice which you have selected will be used for analysis. You can also ask imexam which slice is display, or the full image information of what is in the current frame for your own use (ds9 is just the name I chose, you can call the control object connected to your display window anything)</p>
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">viewer</span><span class="o">=</span><span class="n">imexam</span><span class="o">.</span><span class="n">connect</span><span class="p">()</span>
<span class="n">viewer</span><span class="o">.</span><span class="n">load_fits</span><span class="p">(</span><span class="s1">'test_cube.fits'</span><span class="p">)</span>
<span class="n">viewer</span><span class="o">.</span><span class="n">window</span><span class="o">.</span><span class="n">get_filename</span><span class="p">()</span>
<span class="n">Out</span><span class="p">[</span><span class="mi">24</span><span class="p">]:</span> <span class="s1">'/Users/sosey/ssb/imexam/test_cube.fits'</span>
<span class="n">viewer</span><span class="o">.</span><span class="n">window</span><span class="o">.</span><span class="n">get_frame_info</span><span class="p">()</span>
<span class="n">Out</span><span class="p">[</span><span class="mi">25</span><span class="p">]:</span> <span class="s1">'/Users/sosey/ssb/imexam/test_cube.fits[SCI,1](0, 0)'</span>
</pre></div>
</div>
<p>Now I’m going to use the Cube dialog to change the slice I’m looking at to (4,14) -> as displayed in the dialog. DS9 displayed 1-indexed numbers, and the fits utitlity behind imexam uses 0-indexed numbers, so expect the return to be off by a value of 1.</p>
<p>Let’s ask for the information again:</p>
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">In</span> <span class="p">[</span><span class="mi">26</span><span class="p">]:</span> <span class="n">viewer</span><span class="o">.</span><span class="n">window</span><span class="o">.</span><span class="n">get_filename</span><span class="p">()</span>
<span class="n">Out</span><span class="p">[</span><span class="mi">26</span><span class="p">]:</span> <span class="s1">'/Users/sosey/ssb/imexam/test_cube.fits'</span>
<span class="n">In</span> <span class="p">[</span><span class="mi">27</span><span class="p">]:</span> <span class="n">viewer</span><span class="o">.</span><span class="n">window</span><span class="o">.</span><span class="n">get_frame_info</span><span class="p">()</span>
<span class="n">Out</span><span class="p">[</span><span class="mi">27</span><span class="p">]:</span> <span class="s1">'/Users/sosey/ssb/imexam/test_cube.fits[SCI,1](3, 13)'</span>
</pre></div>
</div>
<p>You can ask for just the information about which slice is displayed and it will return the tuple(extension n, …., extension n-1). The extensions are ordered in row-major form in astropy.io.fits:</p>
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">In</span> <span class="p">[</span><span class="mi">28</span><span class="p">]:</span> <span class="n">viewer</span><span class="o">.</span><span class="n">window</span><span class="o">.</span><span class="n">get_slice_info</span><span class="p">()</span>
<span class="n">Out</span><span class="p">[</span><span class="mi">28</span><span class="p">]:</span> <span class="p">(</span><span class="mi">3</span><span class="p">,</span> <span class="mi">13</span><span class="p">)</span>
</pre></div>
</div>
<p>The returned tuple contains just which 2d slice is displayed. In our cube image, which is 4D (1032, 1024, 35, 5) == (NAXIS1, NAXIS2, NAXIS3, NAXIS4) in DS9, however in astropy.io.fits this is (5,35,1024,1032) == (NAXIS4, NAXIS3, NAXIS2, NAXIS1)</p>
<p>By default, the first extension will be loaded from the cube fits file if none is specified. If you would rather see another extension, you can load it the same as with simpler fits files:</p>
<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">viewer</span><span class="o">.</span><span class="n">load_fits</span><span class="p">(</span><span class="s1">'test_cube.fits'</span><span class="p">,</span><span class="n">extname</span><span class="o">=</span><span class="s1">'REFOUT'</span><span class="p">)</span>
</pre></div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="sphinxsidebar" role="navigation" aria-label="main navigation">
<div class="sphinxsidebarwrapper">
<p class="logo"><a href="../index.html">
<img class="logo" src="../_static/imexam_logo_trans.png" alt="Logo"/>
</a></p><h3>Page Contents</h3>
<ul>
<li><a class="reference internal" href="#">Example 4</a><ul>
<li><a class="reference internal" href="#load-and-examine-an-image-cube">Load and examine an image CUBE</a></li>
</ul>
</li>
</ul>
</div>
</div>
<div class="clearer"></div>
</div>
<footer class="footer">
<p class="pull-right">
<a href="../_sources/imexam/example4.rst.txt"
rel="nofollow">Page Source</a>
<a href="#">Back to Top</a></p>
<p>
© Copyright 2017, Megan Sosey.<br/>
Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 1.6.5.
Last built 19 Dec 2017. <br/>
</p>
</footer>
</body>
</html>
|