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 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560
|
CHANGES
--------
1.1.1 (2016-10-04)
------------------
- Added missing LICENSE and README to tarball.
- Fix undefined ``HDUList``. [#317]
1.1 (2016-09-23)
----------------
- Fixed compatibility of Scalebar.set with Matplotlib 1.5.x. [#272, #286]
- Fixed compatibility with Python 3.5.
- Astropy is now a required dependency, and PyFITS and PyWCS are no longer
supported.
1.0 (2015-02-18)
----------------
New features
~~~~~~~~~~~~
- Added new ``show_vectors`` to show vector maps. [#220]
Improvements
~~~~~~~~~~~~
- The ``auto_refresh`` option now defaults to ``False`` unless IPython is
being used and the Matplotlib backend is interactive. [#238]
Bug fixes
~~~~~~~~~
- Fix a bug that caused RGB images to be incorrectly displayed when zooming
in. [#235]
0.9.14 (2014-11-05)
-------------------
Bug fixes
~~~~~~~~~
- Fix a bug that caused smoothing to fail with integer arrays. [#165]
Improvements
~~~~~~~~~~~~
- Fix deprecation warnings from Astropy. [#173]
0.9.13 (2014-10-04)
-------------------
New features
~~~~~~~~~~~~
- Added ``FITSFigure.set_title`` method that can be used to set the title
of a figure. [#175]
Improvements
~~~~~~~~~~~~
- Beams and scalebars can now optionally be instantiated with Astropy
angular units and quantities. [#186]
- APLpy now includes image tests to ensure reliability over time. [#200]
- The code is now all Python 2 and 3 compatible without requiring 2to3.
[#198]
Bug fixes
~~~~~~~~~
- Fix bug that caused a crash when plotting an image with a single valid
pixel [#197]
- Fixed a severe bug that caused rotated images to have incorrect pixel
scales determined. [#211]
- Fixed a bug that caused set_nan_color to modify Matplotlib colormaps
globally rather than apply just to the desired FITSFigure. [#214]
0.9.12 (2014-07-17)
-------------------
This version fixes compatibility with Astropy 0.4
New features
~~~~~~~~~~~~
- Added the ability to call ``fig.show_contour()`` without arguments and
used the data used to initialize ``FITSFigure``. [#170]
- Added the ability to format colorbar ticks in exponential notation using
the ``log_format`` argument. [#143]
- Added the ability to make NaNs transparent in RGB image output, using the
``make_nans_transparent`` argument. [#138]
API Changes
~~~~~~~~~~~
- astropy.wcs.WCS no longer contains information about the original image
size. Any attempt to instantiate a FITSFigure from a WCS object will raise
a DeprecationException. A workaround is to add `naxisn` attributes to your
WCS object::
mywcs = wcs.WCS(header)
mywcs.naxis1 = header['NAXIS1']
mywcs.naxis2 = header['NAXIS2']
Bug fixes
~~~~~~~~~
- FITSFigure can now be instantiated using an astropy.io.fits.CompImageHDU
object. [#188]
- The coordinate grid is now plotted on the whole axes, not just the subset
containing the image (noticeable when zooming out). [#118]
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
|