forked from aplpy/aplpy
-
Notifications
You must be signed in to change notification settings - Fork 0
/
CHANGES.rst
446 lines (279 loc) · 12 KB
/
CHANGES.rst
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
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
CHANGES
--------
0.9.12 (unreleased)
-------------------
- Nothing changed yet.
0.9.11 (2013-11-29)
-------------------
Bug fixes
~~~~~~~~~
- Fix a bug that meant that pixel scales were incorrectly extracted for
some WCS settings. [#156]
0.9.10 (2013-11-25)
-------------------
This version restores compatibility with Astropy 0.3
New Features
~~~~~~~~~~~~
- `FITSFigure.recenter` can now be used with sliced data cubes. [#122]
Bug fixes
~~~~~~~~~
- Fixed issues related to bugs in matplotlib in `match_original` when using
patch collections. [#124]
- Fixed a bug that made images containing NaN or Inf values crash APLpy. [#113]
- Fixed a bug that meant that world2pix and pix2world could not take
Astropy table columns. [#114]
0.9.9 (2013-04-25)
------------------
The main change in this version is that APLpy is now an Astropy-affiliated
package. This means that the Astropy core package is now required, but
PyFITS and PyWCS are no longer required as dependencies.
This release is now no longer compatible with python-montage, and users
should use the montage-wrapper package instead:
http://www.astropy.org/montage-wrapper/
Similarly, PyAVM 0.9.1 or later is now required, and APLpy cannot use
earlier versions:
http://astrofrog.github.io/pyavm/
This release is also the first release fully compatible with Python 3.
New features
~~~~~~~~~~~~
- file-like objects can now be passed to ``FITSFigure.save()``
- the subplot= argument to ``FITSFigure`` can now take the tuple syntax
``(2, 2, 1)`` instead of the full axes box, e.g. ``[0.1, 0.1, 0.9,
0.9]`` (thanks to Anika Schmiedeke for a patch).
- a colorbar label can now be set (thanks to Daniel Goering for a patch).
API changes
~~~~~~~~~~~
- the ``smooth`` argument used for images and contours can no longer take
a tuple. It takes either a single value for symmetric kernels (``gauss``
and ``box``), or it can take a Numpy array for any other kernel shape.
Bug fixes
~~~~~~~~~
- fixed bug that caused regions read from a ds9 region file to be offset
by one pixel.
- fixed bug that caused an exception when adding a Beam
- fixed bug that caused labels in decimal degrees to disappear for images
near the poles.
- fixed a bug that caused RGB images to appear vertically flipped with
certain versions of Matplotlib.
- added a workaround for a bug in Matplotlib that caused patches to appear
filled even with ``facecolor='none'``.
- fixed bug that caused images with NaN or Inf values to not be smoothed
correctly.
Version 0.9.8
This version fixes issues that occurred when using APLpy with PyFITS
3.0.5. This version also contains the first unit/regression tests (which
we will include many more of in future).
New features
~~~~~~~~~~~~
- APLpy now includes regression tests that can be run with:
python setup.py test
- FITSFigure can now be initialized with files or HDUs with missing WCS
information.
- FITSFigure can now be initialized directly with Numpy arrays
- Added methods to show/hide ticks
Bug fixes
~~~~~~~~~
- Fixed a major bug that prevented data cube slicing with PyFITS 3.0.5
- Fixed a few bugs that occurred when plotting a grid for a few specific
projections.
- Fixed a bug that cause the error:
'Figure' object has no attribute '_auto_refresh'
Version 0.9.7
This version sees the re-write of the WCS support to enable plotting of
FITS files with arbitrary coordinates rather than just sky coordinates,
and to allow slicing of multi-dimensional data cubes. It is now very easy
for example to make position-velocity plots from a 3D FITS cube.
See http://aplpy.github.com/documentation/slicing.html for details.
New features
~~~~~~~~~~~~
- added the ability to plot arbitrary coordinate systems rather than just
sky coordinates.
- added the ability to slice multi-dimensional data cubes.
- added minor ticks.
- pressing 'c' toggles between showing world and pixel coordinates in the
bottom of the interactive window.
- added the ability to specify slice indices for 3D FITS cubes in
make_rgb_image.
- allow pyregion.ShapeList instance to be passed to show_regions.
- the 'logging' module is now used for any stdout output.
- added an overlap= argument to show_contour to force only contours with
at least one point in the image to be shown. This can result in
significantly improved performance, and smaller files, when large FITS
files are used to display contours.
Changes
~~~~~~~
- the default frame color for the 'pretty' theme (the default) is now
black
Version 0.9.6
APLpy is now released under an MIT license
New Features
~~~~~~~~~~~~
- support for plotting AVM-tagged images (requires PyAVM)
- make_rgb_image can now optionally embed AVM Spatial.* meta-data into
images (off by default, requires PyAVM)
- added support for multiple beams
- added method to show arrows
- added method to show lines (thanks to Moritz Guenther)
- added close() method to FITSFigure to free up memory (useful when
making many finder charts for example)
- added B1950 <-> J2000 conversion
- added axis_labels.set_x/yposition and tick_labels.set_x/yposition to
control whether labels are on top/bottom or left/right of the axes.
- now uses python-montage wrapper for reprojection
- added support for passing a WCS object to FITSFigure instead of a
file
- allow a custom box to be specified for the colorbar
API changes
~~~~~~~~~~~
- vmid has changed meaning for log image scaling. It is now the
baseline value to subtract from pixel values before taking the log
(defaults to zero)
- added interpolation= option to show_grayscale and show_colorscale
- added support for zorder= in methods to show shapes (controls which
layers appear on top of which)
- added north=, system=, and equinox= to make_rgb_cube for more control
over the final projection
Bug fixes
~~~~~~~~~
- added a few workaround for matplotlib bugs
- fixed a major bug with downsampling
- fixed bug with import of local modules
- other minor bug fixes
Version 0.9.5
New Features
~~~~~~~~~~~~
- Support for image and contour smoothing
- Support for slicing of n-dimensional datacubes
- Support for beam:
-> add_beam()
-> remove_beam()
- Support for colorbar:
-> add_colorbar()
-> remove_colorbar()
- Support for scalebar:
-> add_scalebar()
-> remove_scalebar()
- Support for plotting ds9 region files:
-> show_regions()
- Support for automatic bounding box adjustments when saving
- New method to set the color to use for NaN values:
-> set_nan_color()
- Auto refreshing has been improved. Figures only refresh once per user
command if refreshing is turned on.
- Ensure tick spacing / label format consistency
- New method to overlay polygons
API changes
~~~~~~~~~~~
- The API has been majorly overhauled. Methods that have been
deprecated will give instructions on the new methods to use.
Bug fixes
~~~~~~~~~
- Fixed a bug with filled contours
- Fixed bug with remove_layer
- Fixed bug with montage commands
Version 0.9.4
Important changes
~~~~~~~~~~~~~~~~~
Matplotlib 0.99 is now required for APLpy
New Features
~~~~~~~~~~~~
- methods such as show_contour, show_markers, etc. now return the
contour, marker, etc. object
- added a method to retrieve the object in a specific layer:
-> get_layer()
- ability to show the beam for the observations:
-> show_beam()
-> hide_beam()
-> set_beam_properties()
- added the ability to show/hide only the x or y axis/tick labels:
-> show_xtick_labels()
-> hide_xtick_labels()
-> show_ytick_labels()
-> hide_ytick_labels()
-> show_xaxis_labels()
-> hide_xaxis_labels()
-> show_yaxis_labels()
-> hide_yaxis_labels()
- convenience functions for world to pixel and pixel to world
conversion:
-> world2pixel()
-> pixel2world()
- added a convention= argument to FITSFigure() and show_contour(). This is
to be used in cases where the WCS interpretation is ambiguous. For
example, a -CAR projection with CRVAL2<>0 can be interpreted in two
different ways. If an ambiguous case pops up, APLpy will raise an
exception and ask for the convention to be specified.
API changes
~~~~~~~~~~~
- set_labels_latex() is now set_system_latex()
Bug fixes
~~~~~~~~~
- the current position of the cursor in world coordinates is now correctly
shown in interactive mode
- fixed an issue which caused RGB FITS cubes to be 64-bit
- fixed a bug which meant that the coordinate grid was not updated
immediately during pan and zoom
Version 0.9.3
New Features
~~~~~~~~~~~~
- added aplpy.make_rgb_cube() that allows users to make a FITS RGB cube
from three FITS files with different projections
- added aplpy.make_rgb_image() that allows users to make an RGB file in
standard image formats from a FITS RGB cube
- added width= and height= arguments to aplpy.FITSFigure.recenter()
method.
- added show_circles(), show_ellipses(), and show_rectangles() to
aplpy.FITSFigure
- new hide_grayscale() and hide_colorscale() methods
API changes
~~~~~~~~~~~
- changes to the API for set_tick_labels_* and set_axis_labels_* methods
- percentiles values are now specified between 0 and 100
Bug fixes
~~~~~~~~~
- fixed an issue which ocurred when reading in FITS cubes
- fixed an issue which led to the last tick along an axis being missing
for coarse images
- fixed a bug that occured if set_theme was called before showing the
image
- fixed a bug that occured when show_contour was called after removing a
layer
Acknowledgments
~~~~~~~~~~~~~~~
Thanks to Paul Ray, Adam Ginsburg, Gus Muench, and forum user hatchell for
bug reports and feature suggestions.
Version 0.9.2
Improvements
~~~~~~~~~~~~
- Improved compatibility issues with matplotlib 0.98.6svn
- Improved speed of initialization of FITSFigure
Version 0.9.1.2
Bug fixes
~~~~~~~~~
- fixed a major bug that occured when reading in Galactic -CAR images
Version 0.9.1
SciPy Dependency Dropped
~~~~~~~~~~~~~~~~~~~~~~~~
While SciPy is a great python package, it can be troublesome to build and
install from scratch. Thanks to Tom Aldcroft's suggestion and highlighting
some of his own code we were able to easily drop the SciPy dependency.
New Features
~~~~~~~~~~~~
- Users can now pass a pyfits HDU instance instead of filenames for both
FITSFigure() and show_contour() if desired.
- Users can now specify an existing figure with the figure= argument.
- Users with a recent enough version of matplotlib (0.98.6svn) can now use
the subplot= argument to place multiple plots in a single figure.
- New hide/show_tick_labels() and hide/show_axis_labels() methods.
- Show_grayscale and show_colorscale() now accept percentile_lower= and
percentile_higher= as arguments.
- Show_grayscale and show_colorscale() now print out vmin and vmax if
chosen automatically.
- New recenter() method to pan and zoom non-interactively.
General Fixes and Optimization
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- Added HDU keyword for the show_contour() method.
- More robust reading in FITS file for the show_contour() method.
- Warning if FITS files do not exist for FITSFigure() or show_contour().
Version 0.9.0
First public beta release