-
Notifications
You must be signed in to change notification settings - Fork 99
/
CHANGES.txt
724 lines (538 loc) · 27.1 KB
/
CHANGES.txt
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
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
Chaco CHANGELOG
===============
Release 6.0.0
-------------
This is a major release which includes support for Python 3.11, and more recent
versions of PySide6, TraitsUI and Enable. There are no substantial new
features, but some backwards compatibility support has been removed as
advertised in deprecation warnings. Substantial work has been done to ensure
that demos and examples are working and up-to-date where possible.
As usual, this release includes a number of bugfixes and minor improvements.
Thanks to all who contributed to the release:
* Chengyu Liu
* Didrik Pinte
* Corran Webster
Enhancements
* Remove deprecated stub files (#903)
* Replace "modern" font with "san-serif" (#901)
Fixes
* Update textPlot when aesthetics change (#905)
* Fix Wx Bitmap usage (#904)
* Fix imports of `marker_trait` (#902)
* Fire `updated` trait and Ranges when data sources are emptied (#900)
* Fix LegendHighlighter hit detection (#897)
* Properly handle NaN in BarPlots (#895)
* Fix polar line renderer (#883)
Documentation/Examples
* Fix imports of ufuncs in Scalar Image Function Inspector example (#894)
* Various small fixes for examples (#859, #864, #870, #871, #873, #874, #880, #882, #884, #885, #892, #893)
Build/CI
* Update testing infrastructure, including Python 3.11 (#891, #898)
Release 5.1.1
-------------
This is a small bugfix release centered around Python 3.8+ support.
Thanks to all who contributed to the release:
* Aaron Ayres
* Rahul Poruri
* Corran Webster
Fixes
* Fix various warnings on Python 3.8 (#856)
* Remove uses of deprecated np.bool (#852)
* Prevent exceptions when plot size too small (#848)
Build/CI
* Get CI running on Python 3.8 (#851)
* Fix CI for changes to GitHub infrastructure (#849)
Release 5.1.0
-------------
This is an incremental release which modernises the usage of Traits in a
number of places, and fixes a number of bugs.
Thanks to all who contributed to the release:
* Chris Angell
* Aaron Ayres
* Nicola De Mitri
* Mark Dickinson
* Rahul Poruri
* Joris Vankerschaver
* Corran Webster
New features/Improvements
* Create and use an Optional() trait type that understands mapped traits (#838)
* Correctly handle NaNs in DataRange classes to avoid NumPy warnings (#835)
* Add tests for ImagePlot map_screen (#809)
* Have map_screen return an empty array rather than list on empty input (#805)
Removals/Deprecations
* Update code to remove usage of Trait() and Either() constructs (#837)
Fixes
* Fix spectrum demo (#827)
* Replace some identity checks (#826)
* Force use of NumPy arrays in certain mappers (#810)
* Fix hittest_tool (#808)
* Fix DataLabelTool (#804)
* Fix CursorTool usage with LogMapper (#803)
* Fix map_screen for BaseXYPlot (#802)
Documentation/examples
* Add Sphinx copybutton to documentation (#832)
* Link to examples at correct point GitHub tag for documentation version (#816)
* Add a Read the Docs configuration file (#812)
* Fix broken links (#793, #794)
Build/CI
* Automate PyPI release process (#839)
* Report Cron Job CI to internal Enthought channels (#811, #830)
* Default Git branch is now "main" (#815)
* Stop using Appveyor and TravisCI (#807)
* Use Enable from EDM rather than source (#795)
Release 5.0.0
-------------
Thanks to all who contributed to the release:
* Aaron Ayres
* Alex Chabot-Leclerc
* Kit Choi
* Nicola De Mitri
* Mark Dickinson
* Matt Hancock
* Midhun Madhusoodanan
* Shoeb Mohammed
* Rahul Poruri
* Martin Renou
* Jonathan Rocher
* Kuya Takami
* Joris Vankerschaver
* Corran Webster
* John Wiggins
* Xiaoyu Wu
New features/Improvements
* Add rectangular selection tool (#482)
* Add missing property index_range to 1D plots (#491)
* Support renderer traits (#514)
Removals/Deprecations
* Remove uses of PyArray_FromDims (#503)
* Remove unused _speedups module (#504)
* Remove SelectableOverlayPlotContainer and references to it (#574)
* Remove chaco.datamapper and subdivision code (#577)
* Remove serializable module and its tests (#598)
* Delete codecov yaml configuration file (#622)
* Remove examples for the vtk backend in chaco (#645)
* Kill chaco.shell and related code (#667)
* Remove objects/modules which explicitly raised a deprecation warning (#670)
* Remove "chaco.scatter_markers" module (#677)
* Delete "chaco.chaco_version" (#678)
* Remove deprecated "ColorMapper._map" method (#684)
* Delete sample_template.plt (#685)
* Remove ChacoPlotItem / ChacoPlotEditor (#688)
* Delete scalar_image_function_inspector_old.py (#689)
* Officially deprecated VariableSizeScatterPlot (#691)
* Remove PlotFrames (#692)
* Delete "test_style.pss" (#697)
* Remove plot_template.py (#702)
* Remove a couple redundant old files (#711)
* Delete PopupablePlot (#717)
Fixes
* Fix typo in the error name (#484)
* Fix attempts to get the shape attribute of a list or tuple. (#487)
* Fix scrollbar demo and update docstring (#489)
* Fix stacked bar plot example, by using the correct starting_value (#498)
* Limit the min zoom out factor along x axis to prevent date range error (#500)
* Do not expose 'auto' for infinite series (#501)
* Fix zoomout issues (#505)
* Fix zoom not working with contour plots (#506)
* Fix and clean up multiaxis.py example (#513)
* Enforce underscore for click command (#523)
* Handle index=None in ScatterInspector (#540)
* Have ArrayDataSource.get_data return empty(shape=0,)), not 0.0 if _data is None (#578)
* Return correct sized tuples of all 0s not None if image plot resized too small (#589)
* Resolve the NotifierNotFound error in testsuite (#601)
* Catch nans before they cause crash in auto_ticks (#636)
* Fix windows/pyqt test_dont_crash_on_click failure (#663)
* Use draw_marker_at_points if possible otherwise use draw_path_at_points in ColormappedScatterPlot (#672)
* Fix a couple of demos (#676)
* Use plot_range_event (aka event.new) not just event in stock_prices (#728)
* Fix broken test and handle case when _data is None in ArrayDataSource.get_data_mask() (#731)
* Replace [] default for data with None (#734)
Documentation/examples
* Documentation Refactor (#462)
* Setup online redirect and proper index page for docset (#517)
* Replace all jet color map use in examples with viridis (#557)
* Update various comments and docstrings (#567)
* Clean up updates for basic_elements docs pages (#570)
* Use Enthought Sphinx Theme if available. (#571)
* Fix broken image links on quickstart page (#588)
* Replace handmade api docs with autogenerated api docs (#637)
* Miscellaneous documentation fixes/changes (#642)
* Add module doc string for chaco.api (#649, #665)
* Use #: instead of # when needed (#650)
* Update modules_and_classes.rst (#652)
* Remove annotated examples from the usermanual (#653)
* Use sphinx todo for currently empty sections of docs (#654)
* Remove optparse from example (#655)
* Delete the quickstart page from the docs (#668)
* Remove references to chaco.shell from the documentation (#669)
* Update van der waal example (#680)
* Remove scipy tutorial content (#681)
* Remove chaco_talk_apr_2008 from docs (#682)
* Update hyetograph example (#687)
* Remove unused images from codebase (#712)
* Organize annotated examples (#721)
* Link to "how do i", not "faq", from home page (#722)
* Matplotlib to chaco cheatsheet in docs (#723)
* Contribute examples to etsdemo (#751)
Maintenance
* Import from traits.api instead of from traits.has_traits (#509)
* Remove commented code (#511, #556, #582, #647)
* Drop Python < 3.6 support (#554, #555)
* Remove redundant 'control' in ZoomTool (#565)
* Clean up style, fix warnings and broken links in tutorials/examples/faq (#568)
* Update copyright year in license.txt (#569)
* Remove EOF file markers (#579)
* Remove unnecessary unittest.main calls in tests (#581)
* Replace on_trait_change with observe (#585, #590, #591, #625, #630)
* Remove dummy return statements (#592, #593, #594)
* Run black on the codebase (#599)
* Remove outdated coverage badge (#623)
* Use requires_redraw when possible (#626)
* Deal with __getstate__ methods (#633)
* Dont alias traitsui.api as tui (#634)
* Use api modules for ETS packages where possible (#643)
* Remove unnecessary print statements (#646)
* Use @property decorator instead of property function (#651)
* Its TraitsUI, not Traits UI (#656)
* Remove unnecessary uses of "use_draw_order" (#661)
* Remove all uses/definitions of use_draw_order (#671)
* Import color palette from chaco.api directly (#675)
* Remove backwards compatibily imports from enable (#679)
* Move tests in "tests_with_backend" submodule into "tests" submodule (#683)
* Rename test so it is discovered by unittest discover (#693)
* Cleanup License files (#696)
* Update "super" usage (#703, #706, #725)
* Use a plot default method instead of overriding the init method in examples (#704, #709)
* Replace custom "assert_raises" with "unittest.TestCase.assertRaises" (#705)
* Concatenate change logs (#710)
* Re-export PolarLineRenderer and PolarMapper from chaco.api (#732)
* Add editable option to ci install command (#733)
* Remove calls to Component._draw_component (#737)
* Add new chaco.plots submodule (#738)
* Use mock through unittest (#740)
* Consolidate overlays into "chaco.overlays" (#741, #786)
* Replace bg_color with bgcolor (#742)
* Revive ScalyPlot (#744)
* Add/Update copyright headers (#755)
* Plot Containers Refactor (#757, #758, #764)
* Remove all definitions / uses of _draw_component (#743, #772)
Build/CI
* Update edm and install/config scripts (#492)
* Use Cython to build extension modules (#502)
* Remove Python 2.7, 3.5 testing, add PyQt 5 (#524)
* Add source click option used on cron jobs to install ets packages from source (#532)
* Switch on default warning flag for CI test command (#537)
* Use PySide2 from EDM instead of PyPI and Use the latest EDM version (3.0.1) (#538)
* Disable macOS builds on Travis CI (#543)
* Fix cron job not installing additional dependencies (#544)
* Add ci command for building documentation (#566)
* Run flake8 on CI but ignore all existing errors (#600)
* Add GitHub Actions CI workflow (#631)
* Import version from installed package if the file doesnt exist (#644)
* Skip test_dont_crash_on_click on windows/pyqt (#666)
* Cleanup ci module and setup (#695)
* Unskip no longer failing test (#714)
* Add pyproject.toml specifying numpy and cython as build deps (#730, #747, #779)
Release 4.8.0
-------------
New features/Improvements
* Refactor DataPrinter to add _build_text_from_event method (PR #450)
* Simplify controlling text of ImageInspectorOverlay (PR #431)
* 2D segment and text scatter plot types (PR #407)
* Set up Windows testing under AppVeyor (PR #445)
* Add option for aligning label in index direction in TextPlot1D (PR #430)
Fixes
* Fix a test that fails with NumPy 1.16.x (PR #471)
* Fix missing imports of SegmentPlot and TextPlot (PR #470)
* Fix circular imports in toolbar_plot, transform_color_mapper (PR #469)
* Fix deprecated logger.warn uses (PR #458)
* Fix DataBox resizing bug (PR #456)
* Do not render quiver if there is no point (PR #424)
* Use single comma-separated trait names in on_trait_change, not multiple
arguments (PR #397)
Documentation/examples
* Add documentation for some tools (PR #451)
* Remove erroneous `label_rotation` comment (PR #447)
* Add scatter inspector example (PR #434)
* Fix float indices in Spectrum demo (PR #427)
* Fix world_map demo (PR #423)
* Fix up create_plot_snapshots script (PR #421)
* Docstring for ArrayPlotData.{set_data,update_data} (PR #399)
Maintenance
* Fix test that fails with Numpy 1.16 (PR #471)
* Update Travis CI configuration to be compatible with Ubuntu Xenial (PR #452)
* Update unittest imports (PR #446)
* Address DeprecationWarnings (PR #441)
* Use unittest-style tests (PR #440)
* Run testsuite on macOS and Python 3.6 (PR #442)
* Use standard Sphinx extensions for trait documenting (PR #436)
* Update Cython generated code to support Python 3.7 (PR #433)
* Skip DataFramePlotData tests if Pandas not installed (PR #422)
Release 4.7.2
-------------
Fixes
* Ensure contiguous inputs to points_in_polygon (#409 & #410)
* Handle multiple plots in LegendHighlighter (#403)
* Alias six.moves as sm (#401)
* Respect visibility in the LegendHighlighter (#402)
* Fix use of itertools.chain() (#394)
Release 4.7.1
-------------
New features/Improvements
* Add a inspector_event attribute to ScatterInspector to get
notifications when both (un)hovering or (de)selecting (PR#395).
Fixes
* Avoid datetime issue on Windows 10 (PR#387)
* Fix doc build (PR#384)
* Upcast to int_ instead of int64 to avoid bincount issue (PR#383)
Release 4.7.0
-------------
New features/Improvements
* Add DataFramePlotData class (PR#367).
* Allow user control over axis title angle (PR#363).
Fixes
* Update raise statement to be Python 3 compatible (PR#360).
* Fix missing color bar when direction is flipped (PR#341).
Maintenance
* Support Python 3 without 2to3 (PR#369).
* Update BarPlot documentation (PR#362).
* Use EDM for CI testing (PR#365).
* Address warnings coming from recent versions of Numpy (PR#350).
Release 4.6.1
-------------
Fixes
* Copy over HOME value to git environment (PR#342).
* Fix issue with setup.py that prevent correct versioning on non-git checkouts
(PR#337).
Release 4.6.0
-------------
New features/Improvements
* Fixes and improvements to contour plots: now can use non-uniformly sampled
grids and have masked regions (PR#326).
* Added MinorPlotAxis (PR#288).
* Improved gather points for line plots (PR#318).
* Added line plot downsampling via Largest Triangle Three Buckets
algorithm (PR#317).
* Added Dash/Zeal docset generation (PR#194).
* Python 3 support (PR#301).
* Use set_bounds for Zoom to reduce number of events fired (PR#233).
* Added more color maps and a DiscreteColorMap class (PR#275).
* A new base "1D plot" class introduced for handling one-dimensional plots,
including refactoring the existing Jitterplot and adding 1D scatterplot
variants that render markers, lines or text (PR#209).
* Replaced chaco.base.bin_search by numpy.searchsorted-based routine for
5x speedup and remove use of zip in chaco.base.arg_find_runs in favour of
column_stack for 10x speedup in bad cases (PR#263).
* `ImagePlot` refactored to clarify transformation applied to images and allow
easier reuse of transformations in subclasses (PR#147).
Fixes
* Fixed issues with contour plots on Python 3.5 (PR#329 and PR#332).
* Fixed issue with diff of boolean arrays on newer NumPy versions (PR#329).
* Fixed occasional IOError crashes in spectrum demo (PR#323).
* Fixed issue with range zoom selection being non-transparent (PR#309).
* Fixed lasso selection for newer NumPy (PR#307).
* Fixed timescale tests and calendar timescales (PR#298).
* Fixed selection alpha for line scatterplot (PR#287).
* Fixed undefined variable error in DataLabel (PR#282).
* Fixed sign inversion bug in Base1DMapper (PR#222).
* Fixed default position attribute in BetterZoom tool (PR#241).
* Workaround RuntimeWarnings from nanmin and nanmax in ImageData.get_bounds
(PR #242).
Maintenance
* Updated install instructions and quick start guide (PR#292).
* Removed special casing of powers of 2 in tick generation (PR#314).
* Added code coverage notification via codecov (PR#297).
* Fixed broken documentation URLs (PR#270).
* Use containers for Travis CI (PR#276).
* Automatic PEP386-compliant version numbering (PR#269).
* More comprehensive testing for AbstractDataSource subclasses. That
includes ArrayDataSource, FunctionDataSource, GridDataSource, ImageData,
MultiArrayDataSource (PR#244).
What's new in Chaco 4.5.0
-------------------------
Change summary since 4.4.1
New features/Improvements
* Added perceptual colormaps by Matteo Niccoli, Dave Green and Kenneth Moreland.
* Added `asynchronous_updates.py` demo that shows a pattern for generating
expensive plots while keeping the interface responsive (PR#170).
* Speeded up by 10x the data mappers of the `GridMapper` class (mapping of 2D data
to/from screen space).
Fixes
* Restored fast renderers for scatterplots that were unintentionally removed in
PR#101 (PR#175).
* Make the `alpha` attribute of scatter plots work as intended (PR#164).
* Resume running test for empty container that has been skipped (PR#190).
* Improved handling of missing or empty data in scatterplot (PR#210)
* Avoid a NumPy crash when using a data source of a unicode array (PR#213).
* PanTool with `restrict_to_data` selected works with empty data sources
(PR#215).
* RangeSelection properly clips bounds when leaving selection area (PR#217).
* Fix white gap between image border and image (PR#219).
* Fix redraw color mapped image plot when color mapper updates (PR#221)
* Fix behaviour of mappers when stretch_data trait is False (PR#227)
* ColormappedScatterplot now redraws when colour map’s updated event fires (PR#230)
* Speed improvements for scatter plots with lots of points (PR#234)
Maintenance
* Added unit tests for ColormappedScatterplot (PR#231).
Release 4.4.1
-------------
This release contains a lot of enhancements and bug fixes mostly to the OOP API of Chaco but also its shell mode.
Change summary since 4.3.0
New features
* Improved ArrayPlotData to support changing multiple arrays without triggering a re-plot after each update. This
prevents the plot from being temporarily out of synch, which is important if the index and the values are both
changed to new values with different shapes (PR#124).
* Added control of the maximum width of a tick label. Provided that hook to the TextBoxOverlay (PR#128).
* Added control to generate fixed aspect ratio grid mappers (PR#129). This allows various 2D plots to control the
shape of the pixels in an image.
Enhancements
* Improved the display of multi-word titles (PR#148).
* Minor improvements to the documentation (PR#134, PR#118).
* Made the cmap_image_plot caching more efficient and faster in large data situations (PR#123).
* Improved support for exporting to multipage PDF (PR#109) and drawing in landscape orientation (PR#115).
* Added control over whether a border for an overlay should be drawn (PR#116).
* Made LineSegmentTool work with BasePlot2D (PR#121).
* TextBoxOverlay now exposes the text color as a top level trait (PR#120).
* Added Travis-CI support for python 2.6 and 2.7 (PR#136, PR#145, PR#146). Github now displays the status inside
each Pull Requests as well as in the README.rst on the project github landing page.
Fixes
* Fixed clipping issue when exporting plot to SVG (PR#111) and PDF (PR#109).
* Fixed export to png, bmp, jpg formats in the shell mode (PR#149).
* Removed unexpected zoom when panning if the pan tool has restrict_to_data set to True and the plot has nonlinear
axes (PR#150).
* Fixed a few of failing unit tests (PR#143).
* Fix sort_order bug (PR#141, issue#119).
Chaco 4.2.0 / Chaco 4.3.0
=========================
Enhancements
------------
* AbstractPlotData and subclasses now implement an update_data() method which
updates the data whilst firing only one update event.
Fixes
-----
* Fixed UnboundLocalError in the Plot class when attempting to create a data
source from an array of unsupported shape.
* DataRange2D.reset and DataRange2D.refresh now work properly by operating on
xrange and yrange, like the other settings operations.
Chaco 4.1.0
===========
Enhancements
------------
* chaco.shell supports the Qt backend (works with IPython >= 0.12)
Fixes
-----
* chaco.shell package updated to work with IPython >= 0.11
Chaco 3.3.2 (Oct 15, 2010)
==========================
Enhancements
------------
* Adding hold and connectedhold render styles to FilledLinePlot
* New FunctionImageData class which is similar to FunctionDataSource
* Replacing all gc.save_state()/gc.restore_state() calls in Chaco with
the new GraphicsContext context handler, using "with gc:"
* New Xray Plot example
* Adding Spectrum Waterfall example
Fixes
-----
* Fixing some commented-out position traits handlers in BaseXYPlot
* Fixing MultiLinePlot's data listener
Chaco 3.3.0 (Feb 24, 2010)
==========================
Enhancements
------------
There has been a lot of work going on in Chaco since the last release. While
there haven't been any big new pieces built out, a lot of things have been
improved across the board.
* Added new ToolbarPlot class which is similar to Plot, but provides a toolbar
* Added toolbar button to copy plot data to the clipboard to the default plot toolbar
* Plot toolbar buttons now can have labels
* Added BetterZoom tool which is more feature rich than the SimpleZoom tool, including key bindings and configurable zoom levels. In the next release, hopefully this will supplant or be merged with the SimpleZoom.
* Added BetterSelectingZoom tool, based on the ZoomTool, but allows for the user to draw a zoom region
* ScatterPlot now has a Callable attribute for the function which renders the markers. This allows for each point to be rendered differently
* Added legend highligher tool which adds a click-to-highlight interaction to the legend
* Added range selection tool for use with 2D image plots
* Added a legend() command to the Chaco shell.
* Added text color support to legends.
* Made the PlotEditor toolkit-indepedent
* Changed the RangeSelection tool so that the selection_completed event is fired whenever the user drags a completed selection around.
Fixes
-----
There have been a lot of minor fixes on a variety of classes as well. A
constant push has been made to reduce the reliance of direct imports on wx,
so that users on Qt will not get any import warnings or errors. Some of
issues that have been fixed are:
* BarPlot now respects the fillcolor alpha value
* FilledLinePlot now draws black lines. Previously lines would be drawn for any color, except black.
* Fixed placement of title when orientation='top'
* Fixed fencepost issue with generating xbounds and ybounds in Plot.img_plot(). Now xbounds and ybounds are generated with N+1 points along their respective dimension. If the user supplies an array of xs, ys, then they are expected to have length (N+1). This may break some existing code, but that's a Good Thing because it means the existing code wasn't quite doing the right thing anyways.
* Wrapped a lot of direct imports of wx, so that users with only Qt will not see any import errors.
* Fixed a bug in horizontal and vertical plot containers wherein fixed_preferred_size was not being respected during layout.
* Fixed the correlation plot example to be more user-friendly.
* Fixed incorrect firing of the 'updated' event and the handling of the 'track' setting in the DataRange1D class.
One final note is that the "chaco2" legacy backwards compatibility package will
be removed by the next release. If you have any code that imports from
"chaco2" and the DeprecationWarnings haven't been sufficiently
motivating thus far, please heed them and change your imports to use
"chaco"!
Chaco 3.2.0 (July 15, 2009)
===========================
Enhancements
------------
* Bounded grids - Horizontal and Vertical grid line start and end points can now be set to a fixed value in data space, or to be the return value of an arbitrary callable. The start and end tick can also be configured via the data_min and data_max traits.
* Added dictionary interface to ArrayPlotData
* Added a Traits UI view to the ScalesAxis
* Added a new chaco.overlays subpackage and a new overlay, the DataBox.
* Improved appearance of PlotToolbar
* Changed add_default_axis() in the plot_factory module to take an axis class as a keyword argument.
* Refactored contour plots into a common base class and implemented proper event handling when their colormaps or data ranges change.
* Changed default colormap on img_plot() and contour_plot() method of Plot to be Spectral instead of Jet.
* Added two more color palettes to the auto color palette, and created a default_colors module.
* Added CandlePlot renderer
* Changed Plot Labels to able to display inside the plot area, instead of only on the outside
* Added optional title attribute to plot legends
* Updated all containers to respect and use the new fixed_preferred_size trait on enable.Component
* New Examples:
* Interval trait editor as a Chaco example (from Stefan van der Walt)
* embedding an interactive Chaco plot inside a VTK RenderWindow using the new Enable VTK backend
* lasso tool on an image plot
* bounded grid
* candle plot
Fixes
-----
* Fixed call signature of ShowAllTickGenerator.get_ticks()
* Plot.title_font is now a delegate to the underlying PlotLabel object (from Chris Colbert)
* Fixed mouse event handling bug in RangeSelection (from Stefan van der Walt)
* ImagePlots now redraw when their input data changes.
* Fixed cached image invalidation in colormapped image plots
* Optimized ScatterPlot.map_index() when index_only is True and the index data is sorted
* Changed ColormappedScatterPlot to no longer incorrectly apply the fill_alpha to the outline color
* Improved date ticking heuristics in chaco.scales subpackage, specifically eliminating the bug where all times between, midnight and 1am would be formatted at too course of a time resolution.
* Cleanup of various examples (titles, appearance)
* The spectrum.py (audio spectrograph) example now properly closes the audio stream.
3.1.0 (March 20, 2009)
======================
Enhancements
------------
* Domain limits - Mappers now can declare the "limits" of their valid domain. PanTool and ZoomTool respect these limits. (pwang)
* Adding "hide_grids" parameter to Plot.img_plot() and Plot.contour_plot() so users can override the default behavior of hiding grids. (pwang)
* Refactored examples to declare a Demo object so they can be be run with the demo.py example launcher. (vibha)
* Adding chaco.overlays package with some canned SVG overlays. (bhendrix)
* DragZoom now can scale both X and Y axes independently corresponding to the mouse cursor motion along the X and Y axes (similar to the zoom behavior in Matplotlib). (pwang)
* New Examples:
* world map (bhendrix)
* more financial plots (pwang)
* scatter_toggle (pwang)
* stacked_axis (pwang)
Fixes
-----
* Fixing the chaco.scales TimeFormatter to use the built-in localtime() instead of the one in the safetime.py module due to Daylight Savings Time issues with timedelta. (r23231, pwang)
* Improved behavior of ScatterPlot when it doesn't get the type of metadata it expects in its "selections" and "selection_masks" metadata keys (r23121, pwang)
* Setting the .range2d attribute on GridMapper now properly sets the two DataRange1D instances of its sub-mappers. (r23119, pwang)
* ScatterPlot.map_index() now respects the index_only flag (r23060, pwang)
* Fixed occasional traceback/bug in LinePlot that occurred when data was completely outside the visible range (r23059, pwang)
* Implementing is_in() on legends to account for padding and alignment (caused by tools that move the legend) (r23052, bhendrix)
* Legend behaves properly when there are no plots to display (r23012, judah)
* Fixed LogScale in the chaco.scales package to correctly handle the case when the length of the interval is less than a decade (r22907, warren.weckesser)
* Fixed traceback when calling copy_traits() on a DataView (r22894, vibha)
* Scatter plots generated by Plot.plot() now properly use the "auto" coloring feature of Plot. (r22727, pwang)
* Reduced the size of screenshots in the user manual. (r22720, rkern)