Using Python Script to change Pie Chart Symbology

Using Python Script to change Pie Chart Symbology

I am trying to change the symbology for Pie chart in ArcGIS.

I have a feature class which is joined to a table and I will like to symbolized as a pie chart. I will be symbolizing it a lot thus I am looking for an automation ways to do this task. Map Layer does not work in this case.

I am very new to Python Scripting and I am wondering if there is there a way to add symbology using Python Script?

With arcpy you can only modify the following types of symbology for vectors:

  • Graduated symbols
  • Graduated colors
  • Unique values.

You cannot actually change the type of symbology (e.g. from single symbol to graduated colors) but you can change some properties of the symbology type chosen.

Using arcpy this is anyway not possible with piecharts, as far as I know. You would need ArcObjects.

But, if you always symbolize the same feature class with a different defintion query, or if you use different feature classes with always the same schema, you could access the properties of the layer and modify its definitionQuery or dataSource properties, to automate your map production process.

How to change the values of a pie chart to absolute values instead of percentages in Google Sheets

I want to be able to change the percentages under each of the fruit names to absolute numbers (the respective quantities). I tried changing the 'slice label' but that only added the numbers over the slices which is not the desired result for this case. The link to the sheet depicted below can be found here. If this is not possible I would be willing to accept getting rid of the percentages all together and leaving just the labels.

Pie Chart

Pie charts are used to display the contribution of each value (slice) to a total (pie). Pie charts always use one data series.

To create a pie chart of the 2017 data series, execute the following steps.

2. On the Insert tab, in the Charts group, click the Pie symbol.

4. Click on the pie to select the whole pie. Click on a slice to drag it away from the center.

Note: only if you have numeric labels, empty cell A1 before you create the pie chart. By doing this, Excel does not recognize the numbers in column A as a data series and automatically creates the correct chart. After creating the chart, you can enter the text Year into cell A1 if you like.

Let's create one more cool pie chart.

5. Select the range A1:D1, hold down CTRL and select the range A3:D3.

6. Create the pie chart (repeat steps 2-3).

7. Click the legend at the bottom and press Delete.

9. Click the + button on the right side of the chart and click the check box next to Data Labels.

10. Click the paintbrush icon on the right side of the chart and change the color scheme of the pie chart.

11. Right click the pie chart and click Format Data Labels.

12. Check Category Name, uncheck Value, check Percentage and click Center.

Note: right click the data labels and click Font to change the font size and font color of the data labels.

List of changes to Matplotlib prior to 2015¶

This is a list of the changes made to Matplotlib from 2003 to 2015. For more recent changes, please refer to the what's new or the API changes.

2015-11-16 Levels passed to contour(f) and tricontour(f) must be in increasing order.

2015-10-21 Added TextBox widget

2015-10-21 Added get_ticks_direction()

2015-02-27 Added the rcParam 'image.composite_image' to permit users to decide whether they want the vector graphics backends to combine all images within a set of axes into a single composite image. (If images do not get combined, users can open vector graphics files in Adobe Illustrator or Inkscape and edit each image individually.) 2015-02-19 Rewrite of C++ code that calculates contours to add support for corner masking. This is controlled by the 'corner_mask' keyword in plotting commands 'contour' and 'contourf'. - IMT 2015-01-23 Text bounding boxes are now computed with advance width rather than ink area. This may result in slightly different placement of text. 2014-10-27 Allowed selection of the backend using the MPLBACKEND environment variable. Added documentation on backend selection methods. 2014-09-27 Overhauled colors.LightSource . Added LightSource.hillshade to allow the independent generation of illumination maps. Added new types of blending for creating more visually appealing shaded relief plots (e.g. blend_mode="overlay" , etc, in addition to the legacy "hsv" mode).

2014-06-10 Added Colorbar.remove()

2014-06-07 Fixed bug so radial plots can be saved as ps in py3k.

2014-06-01 Changed the fmt kwarg of errorbar to support the the mpl convention that "none" means "don't draw it", and to default to the empty string, so that plotting of data points is done with the plot() function defaults. Deprecated use of the None object in place "none". 2014-05-22 Allow the linscale keyword parameter of symlog scale to be smaller than one. 2014-05-20 Added logic to in FontManager to invalidate font-cache if if font-family rcparams have changed.

2014-05-16 Fixed the positioning of multi-line text in the PGF backend.

2014-05-14 Added Axes.add_image() as the standard way to add AxesImage instances to Axes. This improves the consistency with add_artist(), add_collection(), add_container(), add_line(), add_patch(), and add_table().

2014-05-02 Added colorblind-friendly colormap, named 'Wistia'.

2014-04-27 Improved input clean up in Axes.lines Coerce input into a 1D ndarrays (after dealing with units).

2014-04-27 removed un-needed cast to float in stem

2014-04-23 Updated references to "ipython -pylab" The preferred method for invoking pylab is now using the "%pylab" magic. -Chris G. 2014-04-22 Added (re-)generate a simple automatic legend to "Figure Options" dialog of the Qt4Agg backend. 2014-04-22 Added an example showing the difference between interpolation = 'none' and interpolation = 'nearest' in imshow when saving vector graphics files. 2014-04-22 Added violin plotting functions. See Axes.violinplot , Axes.violin , cbook.violin_stats and mlab.GaussianKDE for details. 2014-04-10 Fixed the triangular marker rendering error. The "Up" triangle was rendered instead of "Right" triangle and vice-versa. 2014-04-08 Fixed a bug in by making a list out of a generator at line 263. 2014-04-02 Added clipon=False to patch creation of wedges and shadows in pie . 2014-02-25 In backend_qt4agg changed from using update -> repaint under windows. See comment in source near self._priv_update for longer explanation. 2014-03-27 Added tests for pie ccw parameter. Removed pdf and svg images from tests for pie linewidth parameter. 2014-03-24 Changed the behaviour of axes to not ignore leading or trailing patches of height 0 (or width 0) while calculating the x and y axis limits. Patches having both height == 0 and width == 0 are ignored. 2014-03-24 Added bool kwarg (manage_xticks) to boxplot to enable/disable the managemnet of the xlimits and ticks when making a boxplot. Default in True which maintains current behavior by default. 2014-03-23 Fixed a bug in projections/ by making sure that the theta value being calculated when given the mouse coordinates stays within the range of 0 and 2 * pi. 2014-03-22 Added the keyword arguments wedgeprops and textprops to pie. Users can control the wedge and text properties of the pie in more detail, if they choose. 2014-03-17 Bug was fixed in append_axes from the AxesDivider class would not append axes in the right location with respect to the reference locator axes

2014-03-13 Add parameter 'clockwise' to function pie, True by default.

2014-02-28 Added 'origin' kwarg to spy

2014-02-27 Implemented separate horizontal/vertical axes padding to the ImageGrid in the AxesGrid toolkit 2014-02-27 Allowed markevery property of matplotlib.lines.Line2D to be, an int numpy fancy index, slice object, or float. The float behaviour turns on markers at approximately equal display-coordinate-distances along the line. 2014-02-25 In backend_qt4agg changed from using update -> repaint under windows. See comment in source near self._priv_update for longer explanation. 2014-01-02 triplot now returns the artist it adds and support of line and marker kwargs has been improved. GBY 2013-12-30 Made streamplot grid size consistent for different types of density argument. A 30x30 grid is now used for both density=1 and density=(1, 1). 2013-12-03 Added a pure boxplot-drawing method that allow a more complete customization of boxplots. It takes a list of dicts contains stats. Also created a function ( cbook.boxplot_stats ) that generates the stats needed. 2013-11-28 Added qhull extension module to perform Delaunay triangulation more robustly than before. It is used by tri.Triangulation (and hence all pyplot.tri* methods) and mlab.griddata. Deprecated matplotlib.delaunay module. - IMT 2013-11-05 Add power-law normalization method. This is useful for, e.g., showing small populations in a "hist2d" histogram. 2013-10-27 Added get_rlabel_position and set_rlabel_position methods to PolarAxes to control angular position of radial tick labels. 2013-10-06 Add stride-based functions to mlab for easy creation of 2D arrays with less memory. 2013-10-06 Improve window and detrend functions in mlab, particulart support for 2D arrays.

2013-10-06 Improve performance of all spectrum-related mlab functions and plots.

  •, containing all the subplots helper methods
  •, containing several private methods and a new _AxesBase class. This _AxesBase class contains all the methods that are not directly linked to plots of the "old" Axes
  • contains the Axes class. This class now inherits from _AxesBase: it contains all "plotting" methods and labelling methods.

This refactoring should not affect the API. Only private methods are not importable from the axes module anymore.

2013-05-18 Added support for arbitrary rasterization resolutions to the SVG backend. Previously the resolution was hard coded to 72 dpi. Now the backend class takes a image_dpi argument for its constructor, adjusts the image bounding box accordingly and forwards a magnification factor to the image renderer. The code and results now resemble those of the PDF backend. - MW 2013-05-08 Changed behavior of hist when given stacked=True and normed=True. Histograms are now stacked first, then the sum is normalized. Previously, each histogram was normalized, then they were stacked.

2013-04-25 Changed all instances of:

from matplotlib import MatplotlibDeprecationWarning as mplDeprecation to:

from cbook import mplDeprecation

and removed the import into the matplotlib namespace in Thomas Caswell

2013-04-16 Added patheffect support for Line2D objects. -JJL

2013-03-31 Added support for arbitrary unstructured user-specified triangulations to Axes3D.tricontour[f] - Damon McDougall 2013-03-19 Added support for passing linestyle kwarg to step so all plot kwargs are passed to the underlying plot call. -TAC 2013-02-25 Added classes CubicTriInterpolator, UniformTriRefiner, TriAnalyzer to matplotlib.tri module. - GBy 2013-01-23 Add '' to rcParams to remember and fill in the last directory saved to for figure save dialogs - Martin Spacek 2013-01-13 Add eventplot method to axes and pyplot and EventCollection class to collections. 2013-01-08 Added two extra titles to axes which are flush with the left and right edges of the plot respectively. Andrew Dawson

2013-01-07 Add framealpha keyword argument to legend - PO

2013-01-16 Till Stensitzki added a baseline feature to stackplot

2012-12-22 Added classes for interpolation within triangular grids (LinearTriInterpolator) and to find the triangles in which points lie (TrapezoidMapTriFinder) to matplotlib.tri module. - IMT 2012-12-05 Added MatplotlibDeprecationWarning class for signaling deprecation.

Matplotlib developers can use this class as follows:

from matplotlib import MatplotlibDeprecationWarning as mplDeprecation

In light of the fact that Python builtin DeprecationWarnings are ignored by default as of Python 2.7, this class was put in to allow for the signaling of deprecation, but via UserWarnings which are not ignored by default. - PI

2012-11-27 Added the mtext parameter for supplying matplotlib.text.Text instances to RendererBase.draw_tex and RendererBase.draw_text. This allows backends to utilize additional text attributes, like the alignment of text elements. - pwuertz 2012-11-26 deprecate matplotlib/, which was used only in and is now replaced by the more suitable import matplotlib as mpl . - PI

2012-11-25 Make rc_context available via pyplot interface - PI

2012-11-16 plt.set_cmap no longer throws errors if there is not already an active colorable artist, such as an image, and just sets up the colormap to use from that point forward. - PI 2012-11-16 Added the funcction _get_rbga_face, which is identical to _get_rbg_face except it return a (r,g,b,a) tuble, to line2D. Modified Line2D.draw to use _get_rbga_face to get the markerface color so that any alpha set by markerfacecolor will respected. - Thomas Caswell 2012-11-13 Add a symmetric log normalization class to Also added some tests for the normalization class. Till Stensitzki 2012-11-12 Make axes.stem take at least one argument. Uses a default range(n) when the first arg not provided. Damon McDougall

2012-11-09 Make plt.subplot() without arguments act as subplot(111) - PI

2012-11-08 Replaced plt.figure and plt.subplot calls by the newer, more convenient single call to plt.subplots() in the documentation examples - PI

2012-10-05 Add support for saving animations as animated GIFs. - JVDP

2012-08-11 Fix path-closing bug in patches.Polygon, so that regardless of whether the path is the initial one or was subsequently set by set_xy(), get_xy() will return a closed path if and only if get_closed() is True. Thanks to Jacob Vanderplas. - EF 2012-08-05 When a norm is passed to contourf, either or both of the vmin, vmax attributes of that norm are now respected. Formerly they were respected only if both were specified. In addition, vmin and/or vmax can now be passed to contourf directly as kwargs. - EF 2012-07-24 Contourf handles the extend kwarg by mapping the extended ranges outside the normed 0-1 range so that they are handled by colormap colors determined by the set_under and set_over methods. Previously the extended ranges were mapped to 0 or 1 so that the "under" and "over" colormap colors were ignored. This change also increases slightly the color contrast for a given set of contour levels. - EF

2012-06-24 Make use of mathtext in tick labels configurable - DSD

2012-06-05 Images loaded through PIL are now ordered correctly - CG

2012-06-02 Add new Axes method and pyplot function, hist2d. - PO

2012-05-31 Remove support for 'cairo.<format>' style of backend specification. Deprecate 'cairo.format' and 'savefig.extension' rcParams and replace with 'savefig.format'. - Martin Spacek 2012-05-29 pcolormesh now obeys the passed in "edgecolor" kwarg. To support this, the "shading" argument to pcolormesh now only takes "flat" or "gouraud". To achieve the old "faceted" behavior, pass "edgecolors='k'". - MGD

2012-05-22 Added radius kwarg to pie charts. - HH

2012-05-22 Collections now have a setting "offset_position" to select whether

the offsets are given in "screen" coordinates (default, following the old behavior) or "data" coordinates. This is currently used internally to improve the performance of hexbin.

As a result, the "draw_path_collection" backend methods have grown a new argument "offset_position". - MGD

2012-05-04 Add a new argument to pie charts - startingangle - that allows one to specify the angle offset for the first wedge of the chart. - EP 2012-05-03 symlog scale now obeys the logarithmic base. Previously, it was completely ignored and always treated as base e. - MGD 2012-05-03 Allow linscalex/y keyword to symlog scale that allows the size of the linear portion relative to the logarithmic portion to be adjusted. - MGD 2012-04-14 Added new plot style: stackplot. This new feature supports stacked area plots. - Damon McDougall 2012-04-06 When path clipping changes a LINETO to a MOVETO, it also changes any CLOSEPOLY command to a LINETO to the initial point. This fixes a problem with pdf and svg where the CLOSEPOLY would then draw a line to the latest MOVETO position instead of the intended initial position. - JKS 2012-03-27 Add support to ImageGrid for placing colorbars only at one edge of each column/row. - RMM 2012-03-07 Refactor movie writing into useful classes that make use of pipes to write image data to ffmpeg or mencoder. Also improve settings for these and the ability to pass custom options. - RMM 2012-02-29 errorevery keyword added to errorbar to enable errorbar subsampling. fixes issue #600. 2012-02-28 Added plot_trisurf to the mplot3d toolkit. This supports plotting three dimensional surfaces on an irregular grid. - Damon McDougall 2012-01-23 The radius labels in polar plots no longer use a fixed padding, but use a different alignment depending on the quadrant they are in. This fixes numerical problems when (rmax - rmin) gets too small. - MGD 2012-01-08 Add axes.streamplot to plot streamlines of a velocity field. Adapted from Tom Flannaghan streamplot implementation. -TSY 2011-12-29 ps and pdf markers are now stroked only if the line width is nonzero for consistency with agg, fixes issue #621. - JKS

2011-12-27 Work around an EINTR bug in some versions of subprocess. - JKS

2011-10-25 added support for operatorname to mathtext, including the ability to insert spaces, such as $operatorname$ - PI 2011-08-18 Change api of Axes.get_tightbbox and add an optional keyword parameter call_axes_locator. - JJL 2011-07-29 A new rcParam "axes.formatter.use_locale" was added, that, when True, will use the current locale to format tick labels. This means that, for example, in the fr_FR locale, ',' will be used as a decimal separator. - MGD 2011-07-15 The set of markers available in the plot() and scatter()

commands has been unified. In general, this gives more options to both than were previously available, however, there is one backward-incompatible change to the markers in scatter:

2011-07-13 Fix numerical problems in symlog scale, particularly when linthresh <= 1.0. Symlog plots may look different if one was depending on the old broken behavior - MGD 2011-07-10 Fixed argument handling error in tripcolor/triplot/tricontour, issue #203. - IMT 2011-07-08 Many functions added to mplot3d.axes3d to bring Axes3D objects more feature-parity with regular Axes objects. Significant revisions to the documentation as well. - BVR 2011-07-07 Added compatibility with IPython strategy for picking a version of Qt4 support, and an rcParam for making the choice explicitly: backend.qt4. - EF 2011-07-07 Modified AutoMinorLocator to improve automatic choice of the number of minor intervals per major interval, and to allow one to specify this number via a kwarg. - EF 2011-06-28 3D versions of scatter, plot, plot_wireframe, plot_surface, bar3d, and some other functions now support empty inputs. - BVR 2011-06-22 Add set_theta_offset, set_theta_direction and set_theta_zero_location to polar axes to control the location of 0 and directionality of theta. - MGD 2011-06-22 Add axes.labelweight parameter to set font weight to axis labels - MGD.

2011-06-20 Add pause function to pyplot. - EF

2011-06-16 Added bottom keyword parameter for the stem command. Also, implemented a legend handler for the stem plot. - JJL

2011-06-16 Added legend.frameon rcParams. - Mike Kaufman

2011-05-31 Made backend_qt4 compatible with PySide . - Gerald Storer

2011-04-17 Disable keyboard auto-repeat in qt4 backend by ignoring key events resulting from auto-repeat. This makes constrained zoom/pan work. - EF 2011-04-14 interpolation="nearest" always interpolate images. A new mode "none" is introduced for no interpolation - JJL 2011-04-03 Fixed broken pick interface to AsteriskCollection objects used by scatter. - EF 2011-04-01 The plot directive Sphinx extension now supports all of the features in the Numpy fork of that extension. These include doctest formatting, an 'include-source' option, and a number of new configuration options. - MGD 2011-03-29 Wrapped ViewVCCachedServer definition in a factory function. This class now inherits from urllib2.HTTPSHandler in order to fetch data from github, but HTTPSHandler is not defined if python was built without SSL support. - DSD

2011-03-10 Update pytz version to 2011c, thanks to Simon Cross. - JKS

2011-03-06 Add standalone test runner script. - JKS

2011-03-06 Set edgecolor to 'face' for scatter asterisk-type symbols this fixes a bug in which these symbols were not responding to the c kwarg. The symbols have no face area, so only the edgecolor is visible. - EF 2011-02-27 Support libpng version 1.5.x suggestion by Michael Albert. Changed installation specification to a minimum of libpng version 1.2. - EF 2011-02-20 clabel accepts a callable as an fmt kwarg modified patch by Daniel Hyams. - EF 2011-02-18 scatter([], []) is now valid. Also fixed issues with empty collections - BVR

2011-02-07 Quick workaround for dviread bug #3175113 - JKS

2011-02-05 Add cbook memory monitoring for Windows, using tasklist. - EF 2011-02-05 Speed up Normalize and LogNorm by using in-place operations and by using float32 for float32 inputs and for ints of 2 bytes or shorter based on patch by Christoph Gohlke. - EF 2011-02-04 Changed imshow to use rgba as uint8 from start to finish, instead of going through an intermediate step as double precision thanks to Christoph Gohlke. - EF 2011-01-13 Added zdir and offset arguments to contourf3d to bring contourf3d in feature parity with contour3d. - BVR

2011-01-04 Tag 1.0.1 for release at r8896

2011-01-03 Added display of ticker offset to 3d plots. - BVR

2011-01-03 Turn off tick labeling on interior subplots for pyplots.subplots when sharex/sharey is True. - JDH

2010-12-29 Implement axes_divider.HBox and VBox. -JJL

2010-11-22 Fixed error with Hammer projection. - BVR

2010-11-12 Fixed the placement and angle of axis labels in 3D plots. - BVR

2010-11-07 New rc parameters and allow bypassing the download mechanism in get_sample_data. - JKS 2010-10-04 Fix JPEG saving bug: only accept the kwargs documented by PIL for JPEG files. - JKS

2010-09-15 Remove unused _wxagg extension and numerix.h. - EF

2010-08-25 Add new framework for doing animations with examples.- RM

2010-08-21 Remove unused and inappropriate methods from Tick classes: set_view_interval, get_minpos, and get_data_interval are properly found in the Axis class and don't need to be duplicated in XTick and YTick. - EF 2010-08-21 Change Axis.set_view_interval() so that when updating an existing interval, it respects the orientation of that interval, and can enlarge but not reduce the interval. This fixes a bug in which Axis.set_ticks would change the view limits of an inverted axis. Whether set_ticks should be affecting the viewLim at all remains an open question. - EF 2010-08-16 Handle NaN's correctly in path analysis routines. Fixes a bug where the best location for a legend was not calculated correctly when the line contains NaNs. - MGD

2010-08-14 Fix bug in patch alpha handling, and in bar color kwarg - EF

2010-08-12 Removed all traces of numerix module after 17 months of deprecation warnings. - EF 2010-08-05 Added keyword arguments 'thetaunits' and 'runits' for polar plots. Fixed PolarAxes so that when it set default Formatters, it marked them as such. Fixed semilogx and semilogy to no longer blindly reset the ticker information on the non-log axis. Axes.arrow can now accept unitized data. - JRE 2010-08-03 Add support for MPLSETUPCFG variable for custom setup.cfg filename. Used by sage buildbot to build an mpl w/ no gui support - JDH 2010-08-01 Create directory specified by MPLCONFIGDIR if it does not exist. - ADS

2010-07-20 Return Qt4's default cursor when leaving the canvas - DSD

2010-07-06 Tagging for mpl 1.0 at r8502

2010-07-05 Added Ben Root's patch to put 3D plots in arbitrary axes, allowing you to mix 3d and 2d in different axes/subplots or to have multiple 3D plots in one figure. See examples/mplot3d/ - JDH 2010-07-05 Preferred kwarg names in set_xlim are now 'left' and 'right' in set_ylim, 'bottom' and 'top' original kwargs are still accepted without complaint. - EF 2010-07-05 TkAgg and FltkAgg backends are now consistent with other interactive backends: when used in scripts from the command line (not from ipython -pylab), show blocks, and can be called more than once. - EF 2010-07-02 Modified CXX/WrapPython.h to fix "swab bug" on solaris so mpl can compile on Solaris with CXX6 in the trunk. Closes tracker bug 3022815 - JDH 2010-06-30 Added autoscale convenience method and corresponding pyplot function for simplified control of autoscaling and changed axis, set_xlim, and set_ylim so that by default, they turn off the autoscaling on the relevant axis or axes. Therefore one can call set_xlim before plotting a line, for example, and the limits will be retained. - EF 2010-06-20 Added Axes.tick_params and corresponding pyplot function to control tick and tick label appearance after an Axes has been created. - EF 2010-06-09 Allow Axes.grid to control minor gridlines allow Axes.grid and Axis.grid to control major and minor gridlines in the same method call. - EF 2010-06-06 Change the way we do split/dividend adjustments in to handle dividends and fix the zero division bug reported in sf bug 2949906 and 2123566. Note that volume is not adjusted because the Yahoo CSV does not distinguish between share split and dividend adjustments making it near impossible to get volume adjustment right (unless we want to guess based on the size of the adjustment or scrape the html tables, which we don't) - JDH

2010-06-06 Updated dateutil to 1.5 and pytz to 2010h.

2010-06-02 Add error_kw kwarg to - EF

2010-06-01 Fix pcolormesh() and QuadMesh to pass on kwargs as appropriate. - RM

2010-05-18 Merge mpl_toolkits.gridspec into the main tree. - JJL

2010-05-04 Improve backend_qt4 so it displays figures with the correct size - DSD 2010-04-20 Added generic support for connecting to a timer for events. This adds TimerBase, TimerGTK, TimerQT, TimerWx, and TimerTk to the backends and a new_timer() method to each backend's canvas to allow ease of creating a new timer. - RM

2010-04-20 Added margins() Axes method and pyplot function. - EF

2010-04-18 update the axes_grid documentation. -JJL

2010-04-18 Control MaxNLocator parameters after instantiation, and via Axes.locator_params method, with corresponding pyplot function. -EF 2010-04-18 Control ScalarFormatter offsets directly and via the Axes.ticklabel_format() method, and add that to pyplot. -EF

2010-04-16 Add a close_event to the backends. -RM

2010-04-06 modify axes_grid examples to use axes_grid1 and axisartist. -JJL

2010-04-06 rebase axes_grid using axes_grid1 and axisartist modules. -JJL

2010-04-06 axes_grid toolkit is split into two separate modules, axes_grid1 and axisartist. -JJL 2010-04-05 Speed up import: import pytz only if and when it is needed. It is not needed if the rc timezone is UTC. - EF 2010-04-03 Added color kwarg to Axes.hist(), based on work by Jeff Klukas. - EF 2010-03-24 refactor colorbar code so that no cla() is necessary when mappable is changed. -JJL 2010-03-22 fix incorrect rubber band during the zoom mode when mouse leaves the axes. -JJL

2010-03-21 x/y key during the zoom mode only changes the x/y limits. -JJL

2010-03-20 Added function suggested by JJL. - EF

2010-03-20 Added conditional support for new Tooltip API in gtk backend. - EF

2010-03-20 Changed plt.fig_subplot() to plt.subplots() after discussion on list, and changed its API to return axes as a numpy object array (with control of dimensions via squeeze keyword). FP.

2010-03-13 Manually brought in commits from branch:

2010-03-03 Manually brought in commits from branch via diff/patch (svnmerge is broken):

2010-02-25 add that demonstrates new functionality. -JJL

2010-02-25 refactor Annotation to support arbitrary Transform as xycoords or textcoords. Also, if a tuple of two coordinates is provided, they are interpreted as coordinates for each x and y position. -JJL 2010-02-24 Added pyplot.fig_subplot(), to create a figure and a group of subplots in a single call. This offers an easier pattern than manually making figures and calling add_subplot() multiple times. FP 2010-02-17 Added Gokhan's and Mattias' customizable keybindings patch for the toolbar. You can now set the keymap.* properties in the matplotlibrc file. Newbindings were added for toggling log scaling on the x-axis. JDH 2010-02-16 Committed TJ's filled marker patch for left|right|bottom|top|full filled markers. See examples/pylab_examples/ JDH 2010-02-11 Added 'bootstrap' option to boxplot. This allows bootstrap estimates of median confidence intervals. Based on an initial patch by Paul Hobson. - ADS 2010-02-06 Added setup.cfg "basedirlist" option to override setting in "basedir" dictionary added "gnu0" platform requested by Benjamin Drung. - EF

2010-02-06 Added 'xy' scaling option to EllipseCollection. - EF

2010-02-03 Made plot_directive use a custom PlotWarning category, so that warnings can be turned into fatal errors easily if desired. - FP 2010-01-29 Added draggable method to Legend to allow mouse drag placement. Thanks Adam Fraser. JDH 2010-01-25 Fixed a bug reported by Olle Engdegard, when using histograms with stepfilled and log=True - MM

2010-01-16 Upgraded CXX to 6.1.1 - JDH

2009-01-16 Don't create minor ticks on top of existing major ticks. Patch by Neil Crighton. -ADS 2009-01-16 Ensure three minor ticks always drawn (SF# 2924245). Patch by Neil Crighton. -ADS 2010-01-16 Applied patch by Ian Thomas to fix two contouring problems: now contourf handles interior masked regions, and the boundaries of line and filled contours coincide. - EF 2009-01-11 The color of legend patch follows the rc parameters axes.facecolor and axes.edgecolor. -JJL 2009-01-11 adjustable of Axes can be "box-forced" which allow sharing axes. -JJL 2009-01-11 Add add_click and pop_click methods in BlockingContourLabeler. -JJL

2010-01-03 Added rcParams['axes.color_cycle'] - EF

2010-01-03 Added Pierre's qt4 formlayout editor and toolbar button - JDH

2009-12-31 Commit a workaround for a regression in PyQt4-4.6. <0,1>- DSD

2009-12-22 Fix cmap data for gist_earth_r, etc. -JJL

2009-12-20 spines: put spines in data coordinates, add set_bounds() call. -ADS 2009-12-18 Don't limit notch size in boxplot to q1-q3 range, as this is effectively making the data look better than it is. - ADS 2009-12-18 mlab.prctile handles even-length data, such that the median is the mean of the two middle values. - ADS

2009-12-15 Add raw-image (unsampled) support for the ps backend. - JJL

2009-12-14 Add patch_artist kwarg to boxplot, but keep old default. Convert to use the new patch_artist. - ADS 2009-12-06 axes_grid: reimplemented AxisArtist with FloatingAxes support. Added new examples. - JJL 2009-12-01 Applied Laurent Dufrechou's patch to improve blitting with the qt4 backend - DSD 2009-11-13 The pdf backend now allows changing the contents of a pdf file's information dictionary via PdfPages.infodict. - JKS 2009-11-12 should no longer cause EINTR on Python 2.6 (but will on the 2.5 version of subprocess). Also the fc-list command in that file was fixed so now it should actually find the list of fontconfig fonts. - JKS 2009-11-10 Single images, and all images in renderers with option_image_nocomposite (i.e. agg, macosx and the svg backend when rcParams['svg.image_noscale'] is True), are now drawn respecting the zorder relative to other artists. (Note that there may now be inconsistencies across backends when more than one image is drawn at varying zorders, but this change introduces correct behavior for the backends in which it's easy to do so.) 2009-10-21 Make AutoDateLocator more configurable by adding options to control the maximum and minimum number of ticks. Also add control of the intervals to be used for ticking. This does not change behavior but opens previously hard-coded behavior to runtime modification`. - RMM 2009-10-19 Add "path_effects" support for Text and Patch. See examples/pylab_examples/ -JJL 2009-10-19 Add "use_clabeltext" option to clabel. If True, clabels will be created with ClabelText class, which recalculates rotation angle of the label during the drawing time. -JJL 2009-10-16 Make AutoDateFormatter actually use any specified timezone setting.This was only working correctly when no timezone was specified. - RMM

2009-09-27 Beginnings of a capability to test the pdf backend. - JKS

2009-09-27 Add a savefig.extension rcparam to control the default filename extension used by savefig. - JKS

2009-09-21 Tagged for release 0.99.1

2009-09-20 Fix usetex spacing errors in pdf backend. - JKS

2009-09-20 Add Sphinx extension to highlight IPython console sessions, originally authored (I think) by Michael Droetboom. - FP 2009-09-20 Fix off-by-one error in dviread.Tfm, and additionally protect against exceptions in case a dvi font is missing some metrics. - JKS 2009-09-15 Implement draw_text and draw_tex method of backend_base using the textpath module. Implement draw_tex method of the svg backend. - JJL

2009-09-15 Don't fail on AFM files containing floating-point bounding boxes - JKS

2009-09-13 AxesGrid add modified version of colorbar. Add colorbar location howto. - JJL 2009-09-07 AxesGrid implemented axisline style. Added a demo examples/axes_grid/ JJL 2009-09-04 Make the textpath class as a separate module ( Add support for mathtext and tex.- JJL 2009-09-01 Added support for Gouraud interpolated triangles. pcolormesh now accepts shading='gouraud' as an option. - MGD 2009-08-29 Added matplotlib.testing package, which contains a Nose plugin and a decorator that lets tests be marked as KnownFailures - ADS 2009-08-20 Added scaled dict to AutoDateFormatter for customized scales - JDH 2009-08-15 Pyplot interface: the current image is now tracked at the figure and axes level, addressing tracker item 1656374. - EF 2009-08-15 Docstrings are now manipulated with decorators defined in a new module,, thanks to Jason Coombs. - EF 2009-08-14 Add support for image filtering for agg back end. See the example -JJL 2009-08-09 AnnotationBbox added. Similar to Annotation, but works with OffsetBox instead of Text. See the example -JJL 2009-08-07 BboxImage implemented. Two examples, and added. - JJL 2009-08-07 In an effort to simplify the backend API, all clipping rectangles

and paths are now passed in using GraphicsContext objects, even on collections and images. Therefore:

draw_path_collection(self, master_transform, cliprect, clippath,

clippath_trans, paths, all_transforms, offsets, offsetTrans, facecolors, edgecolors, linewidths, linestyles, antialiaseds, urls)

clippath_trans, meshWidth, meshHeight, coordinates, offsets, offsetTrans, facecolors, antialiased, showedges)

draw_image(self, x, y, im, bbox, clippath=None, clippath_trans=None)

2009-08-06 Tagging the 0.99.0 release at svn r7397 - JDH

  • fixed an alpha colormapping bug posted on sf 2832575
  • fix typo in use nanmin, nanmax in (patch by Christoph Gohlke)
  • remove dup gui event in enter/leave events in gtk
  • lots of fixes for os x binaries (Thanks Russell Owen)
  • attach gtk events to mpl events -- fixes sf bug 2816580
  • applied sf patch 2815064 (middle button events for wx) and patch 2818092 (resize events for wx)
  • fixed so it doesn't break the ReST docs.
  • removed a couple of cases of mlab.load
  • fixed rec2csv win32 file handle bug from sf patch 2831018
  • added two examples from Josh Hemann: examples/pylab_examples/ and examples/pylab_examples/
  • handled sf bugs 2831556 and 2830525 better bar error messages and backend driver configs
  • added miktex win32 patch from sf patch 2820194
  • apply sf patches 2830233 and 2823885 for osx setup and 64 bit thanks Michiel

2009-08-03 Fixed so it doesn't break the ReST docs. - JKS

2009-08-03 pylab no longer provides a load and save function. These are available in matplotlib.mlab, or you can use numpy.loadtxt and numpy.savetxt for text files, or and np.load for binary numpy arrays. - JDH 2009-07-31 Added cbook.get_sample_data for urllib enabled fetching and caching of data needed for examples. See examples/misc/ - JDH

2009-07-31 Tagging 0.99.0.rc1 at 7314 - MGD

2009-07-30 Add set_cmap and register_cmap, and improve get_cmap, to provide convenient handling of user-generated colormaps. Reorganized _cm and cm modules. - EF

2009-07-28 Quiver speed improved, thanks to tip by Ray Speth. -EF

2009-07-27 Simplify argument handling code for plot method. -EF

2009-07-25 Allow "plot(1, 2, 'r*')" to work. - EF

2009-07-22 Added an 'interp' keyword to griddata so the faster linear interpolation method can be chosen. Default is 'nn', so default behavior (using natural neighbor method) is unchanged (JSW) 2009-07-22 Improved so that it generates the correct signatures for pyplot functions. - JKS 2009-07-19 Fixed the docstring of Axes.step to reflect the correct meaning of the kwargs "pre" and "post" - See SF bug - JDH 2009-07-18 Fix support for hatches without color fills to pdf and svg backends. Add an example of that to - JKS

2009-07-17 Removed fossils from swig version of agg backend. - EF

2009-07-14 initial submission of the annotation guide. -JJL

2009-07-14 axes_grid minor improvements in anchored_artists and inset_locator. -JJL 2009-07-14 Fix a few bugs in ConnectionStyle algorithms. Add ConnectionPatch class. -JJL 2009-07-11 Added a fillstyle Line2D property for half filled markers -- see examples/pylab_examples/ JDH 2009-07-08 Attempt to improve performance of qt4 backend, do not call qApp.processEvents while processing an event. Thanks Ole Streicher for tracking this down - DSD 2009-06-24 Add withheader option to mlab.rec2csv and changed use_mrecords default to False in mlab.csv2rec since this is partially broken - JDH 2009-06-24 backend_agg.draw_marker quantizes the main path (as in the draw_path). - JJL

2009-06-24 axes_grid: floating axis support added. - JJL

2009-06-14 Add new command line options to to support running only some directories of tests - JKS

2009-06-13 partial cleanup of mlab and its importation in pylab - EF

2009-06-13 Introduce a rotation_mode property for the Text artist. See examples/pylab_examples/ -JJL 2009-06-07 add support for bz2 files per sf support request 2794556 - JDH 2009-06-06 added a properties method to the artist and inspector to return a dict mapping property name -> value see sf feature request 2792183 - JDH

2009-06-06 added Neil's auto minor tick patch sf patch #2789713 - JDH

2009-06-06 do not apply alpha to rgba color conversion if input is already rgba - JDH 2009-06-03 axes_grid Initial check-in of curvelinear grid support. See examples/axes_grid/ - JJL

2009-06-01 Add set_color method to Patch - EF

2009-06-01 Spine is now derived from Patch - ADS

2009-06-01 use cbook.is_string_like() instead of isinstance() for spines - ADS

2009-06-01 cla() support for spines - ADS

2009-06-01 Removed support for gtk < 2.4. - EF

2009-05-29 Improved the animation_blit_qt4 example, which was a mix of the object-oriented and pylab interfaces. It is now strictly object-oriented - DSD

2009-05-28 Fix axes_grid toolkit to work with spine patch by ADS. - JJL

2009-05-28 Applied fbianco's patch to handle scroll wheel events in the qt4 backend - DSD

2009-05-26 Add support for "axis spines" to have arbitrary location. -ADS

2009-05-20 Add an empty matplotlibrc to the tests/ directory so that running tests will use the default set of rcparams rather than the user's config. - RMM 2009-05-19 Axis.grid(): allow use of which='major,minor' to have grid on major and minor ticks. -ADS 2009-05-18 Make psd(), csd(), and cohere() wrap properly for complex/two-sided versions, like specgram() (SF #2791686) - RMM 2009-05-18 Fix the linespacing bug of multiline text (#1239682). See examples/pylab_examples/ -JJL 2009-05-18 Add annotation_clip attr. for text.Annotation class. If True, annotation is only drawn when the annotated point is inside the axes area. -JJL 2009-05-17 Fix bug(#2749174) that some properties of minor ticks are not conserved -JJL 2009-05-17 applied Michiel's sf patch 2790638 to turn off gtk event loop in setupext for pygtk>=2.15.10 - JDH 2009-05-17 applied Michiel's sf patch 2792742 to speed up Cairo and macosx collections speedups can be 20x. Also fixes some bugs in which gc got into inconsistent state

2008-05-17 Release at r7107 from the branch - JDH

2009-05-13 An optional offset and bbox support in restore_bbox. Add -JJL 2009-05-13 psfrag in backend_ps now uses baseline-alignment when preview.sty is used ((default is bottom-alignment). Also, a small API improvement in OffsetBox-JJL 2009-05-13 When the x-coordinate of a line is monotonically increasing, it is now automatically clipped at the stage of generating the transformed path in the draw method this greatly speeds up zooming and panning when one is looking at a short segment of a long time series, for example. - EF

2009-05-11 aspect=1 in log-log plot gives square decades. -JJL

2009-05-08 clabel takes new kwarg, rightside_up if False, labels will not be flipped to keep them rightside-up. This allows the use of clabel to make streamfunction arrows, as requested by Evan Mason. - EF 2009-05-07 'labelpad' can now be passed when setting x/y labels. This allows controlling the spacing between the label and its axis. - RMM 2009-05-06 print_ps now uses mixed-mode renderer. Axes.draw rasterize artists whose zorder smaller than rasterization_zorder. -JJL

2009-05-06 Per-artist Rasterization, originally by Eric Bruning. -JJ

2009-05-05 Add an example that shows how to make a plot that updates using data from another process. Thanks to Robert Cimrman - RMM

2009-05-05 Add Axes.get_legend_handles_labels method. - JJL

2009-05-04 Fix bug that Text.Annotation is still drawn while set to not visible. - JJL

2009-05-04 Added TJ's fill_betweenx patch - JDH

2009-05-02 Added options to plotfile based on question from Joseph Smidt and patch by Matthias Michler. - EF 2009-05-01 Changed add_artist and similar Axes methods to return their argument. - EF

2009-04-30 Incorrect eps bbox for landscape mode fixed - JJL

2009-04-28 Fixed incorrect bbox of eps output when usetex=True. - JJL

2009-04-24 Changed use of* to instead use subprocess.Popen. os.popen* are deprecated in 2.6 and are removed in 3.0. - RMM 2009-04-20 Worked on axes_grid documentation. Added axes_grid.inset_locator. - JJL

2009-04-17 Initial check-in of the axes_grid toolkit. - JJL

2009-04-17 Added a support for bbox_to_anchor in offsetbox.AnchoredOffsetbox. Improved a documentation. - JJL 2009-04-16 Fixed a offsetbox bug that multiline texts are not correctly aligned. - JJL 2009-04-16 Fixed a bug in mixed mode renderer that images produced by an rasterizing backend are placed with incorrect size. - JJL 2009-04-14 Added Jonathan Taylor's Reinier Heeres' port of John Porters' mplot3d to svn trunk. Package in mpl_toolkits.mplot3d and demo is examples/mplot3d/ Thanks Reiner 2009-04-06 The pdf backend now escapes newlines and linefeeds in strings. Fixes sf bug #2708559 thanks to Tiago Pereira for the report. 2009-04-06 texmanager.make_dvi now raises an error if LaTeX failed to create an output file. Thanks to Joao Luis Silva for reporting this. - JKS 2009-04-05 _png.read_png() reads 12 bit PNGs (patch from Tobias Wood) - ADS 2009-04-04 Allow log axis scale to clip non-positive values to small positive value this is useful for errorbars. - EF 2009-03-28 Make images handle nan in their array argument. A helper, cbook.safe_masked_invalid() was added. - EF

2009-03-25 Make contour and contourf handle nan in their Z argument. - EF

2009-03-20 Add AuxTransformBox in to support some transformation. example is enhanced and renamed ( - JJL

2009-03-20 Add "bar" connection style for annotation - JJL

2009-03-17 Fix bugs in edge color handling by contourf, found by Jae-Joon Lee. - EF 2009-03-14 Added 'LightSource' class to colors module for creating shaded relief maps. added to illustrate usage. - JSW 2009-03-11 Ensure wx version >= 2.8 thanks to Sandro Tosi and Chris Barker. - EF

2009-03-10 Fix join style bug in pdf. - JKS

2009-03-07 Add pyplot access to figure number list - EF

2009-02-28 hashing of FontProperties accounts current rcParams - JJL

2009-02-28 Prevent double-rendering of shared axis in twinx, twiny - EF

2009-02-26 Add optional bbox_to_anchor argument for legend class - JJL

2009-02-26 Support image clipping in pdf backend. - JKS

2009-02-25 Improve tick location subset choice in FixedLocator. - EF

2009-02-24 Deprecate numerix, and strip out all but the numpy part of the code. - EF 2009-02-21 Improve scatter argument handling add an early error message, allow inputs to have more than one dimension. - EF 2009-02-16 Move to the installed source tree. Add support for inline code content - MGD 2009-02-16 Move to the installed source tree so it is available to other projects. - MGD

2009-02-14 Added the legend title support - JJL

2009-02-10 Fixed a bug in backend_pdf so it doesn't break when the setting pdf.use14corefonts=True is used. Added test case in unit/ - NGR 2009-02-08 Added a new imsave function to and exposed it in the pyplot interface - GR 2009-02-04 Some reorgnization of the legend code. added as an example. - JJL

2009-02-04 Add extent keyword arg to hexbin - ADS

2009-02-04 Fix bug in mathtext related to dots and ldots - MGD

2009-02-03 Change default joinstyle to round - MGD

2009-02-02 Reduce number of marker XObjects in pdf output - JKS

2009-02-02 Change default resolution on polar plot to 1 - MGD

2009-02-02 Avoid malloc errors in ttconv for fonts that don't have e.g., PostName (a version of Tahoma triggered this) - JKS 2009-01-30 Remove support for pyExcelerator in exceltools -- use xlwt instead - JDH 2009-01-29 Document 'resolution' kwarg for polar plots. Support it when using pyplot.polar, not just Figure.add_axes. - MGD 2009-01-29 Rework the nan-handling/clipping/quantizing/simplification framework so each is an independent part of a pipeline. Expose the C++-implementation of all of this so it can be used from all Python backends. Add rcParam "path.simplify_threshold" to control the threshold of similarity below which vertices will be removed.

2009-01-26 Improved tight bbox option of the savefig. - JJL

2009-01-26 Make curves and NaNs play nice together - MGD

2009-01-21 Changed the defaults of acorr and xcorr to use usevlines=True, maxlags=10 and normed=True since these are the best defaults

2009-01-19 Fix bug in quiver argument handling. - EF

2009-01-19 Fix bug in backend_gtk: don't delete nonexistent toolbar. - EF

2009-01-16 Implement bbox_inches option for savefig. If bbox_inches is "tight", try to determine the tight bounding box. - JJL 2009-01-16 Fix bug in is_string_like so it doesn't raise an unnecessary exception. - EF 2009-01-16 Fix an infinite recursion in the unit registry when searching for a converter for a sequence of strings. Add a corresponding test. - RM 2009-01-16 Bugfix of C typedef of MPL_Int64 that was failing on Windows XP 64 bit, as reported by George Goussard on numpy mailing list. - ADS 2009-01-16 Added helper function LinearSegmentedColormap.from_list to facilitate building simple custom colomaps. See examples/pylab_examples/ - JDH 2009-01-16 Applied Michiel's patch for macosx backend to fix rounding bug. Closed sf bug 2508440 - JSW 2009-01-10 Applied Michiel's hatch patch for macosx backend and draw_idle patch for qt. Closes sf patched 2497785 and 2468809 - JDH

2009-01-10 Fix bug in pan/zoom with log coordinates. - EF

2009-01-06 Fix bug in setting of dashed negative contours. - EF

2009-01-06 Be fault tolerant when len(linestyles)>NLev in contour. - MM

2009-01-06 Added marginals kwarg to hexbin to plot marginal densities JDH 2009-01-06 Change user-visible multipage pdf object to PdfPages to avoid accidents with the file-like PdfFile. - JKS

2009-01-05 Fix a bug in pdf usetex: allow using non-embedded fonts. - JKS

2009-01-05 optional use of preview.sty in usetex mode. - JJL

2009-01-02 Allow multipage pdf files. - JKS

2008-12-31 Improve pdf usetex by adding support for font effects (slanting and extending). - JKS 2008-12-29 Fix a bug in pdf usetex support, which occurred if the same Type-1 font was used with different encodings, e.g., with Minion Pro and MnSymbol. - JKS

2008-12-20 fix the dpi-dependent offset of Shadow. - JJL

2008-12-18 add new arrow style, a line + filled triangles. -JJL

2008-12-18 Re-Released from v0_98_5_maint at r6679 Released from v0_98_5_maint at r6667

2008-12-18 Removed configobj, experimental traits and doc/mpl_data link - JDH

2008-12-18 Fix bug where a line with NULL data limits prevents subsequent data limits from calculating correctly - MGD

2008-12-17 Major documentation generator changes - MGD

2008-12-17 Applied macosx backend patch with support for path collections, quadmesh, etc. - JDH 2008-12-17 fix dpi-dependent behavior of text bbox and arrow in annotate -JJL 2008-12-17 Add group id support in artist. Two examples which demonstrate svg filter are added. -JJL

2008-12-16 Another attempt to fix dpi-dependent behavior of Legend. -JJL

2008-12-16 Fixed dpi-dependent behavior of Legend and fancybox in Text.

2008-12-16 Added markevery property to Line2D to support subsampling of markers - JDH 2008-12-15 Removed mpl_data symlink in docs. On platforms that do not support symlinks, these become copies, and the font files are large, so the distro becomes unnecessarily bloated. Keeping the mpl_examples dir because relative links are harder for the plot directive and the *.py files are not so large. - JDH 2008-12-15 Fix $ in non-math text with usetex off. Document differences between usetex on/off - MGD

2008-12-15 Fix anti-aliasing when auto-snapping - MGD

2008-12-15 Fix grid lines not moving correctly during pan and zoom - MGD

2008-12-12 Preparations to eliminate maskedarray rcParams key: its use will now generate a warning. Similarly, importing the obsolote numerix.npyma will generate a warning. - EF 2008-12-12 Added support for the numpy.histogram() weights parameter to the axes hist() method. Docs taken from numpy - MM

2008-12-12 Fixed warning in hist() with numpy 1.2 - MM

2008-12-12 Removed external packages: configobj and enthought.traits

which are only required by the experimental traited config and are somewhat out of date. If needed, install them independently, see:

2008-12-12 Added support to assign labels to histograms of multiple data. - MM

2008-12-11 Released 0.98.5 at svn r6573

2008-12-11 Use subprocess.Popen instead of os.popen in dviread (Windows problem reported by Jorgen Stenarson) - JKS 2008-12-10 Added Michael's font_manager fix and Jae-Joon's figure/subplot fix. Bumped version number to 0.98.5 - JDH

2008-12-09 Released 0.98.4 at svn r6536

2008-12-08 Added mdehoon's native macosx backend from sf patch 2179017 - JDH

2008-12-08 Removed the prints in the set_*style commands. Return the list of pprinted strings instead - JDH 2008-12-08 Some of the changes Michael made to improve the output of the property tables in the rest docs broke of made difficult to use some of the interactive doc helpers, e.g., setp and getp. Having all the rest markup in the ipython shell also confused the docstrings. I added a new rc param docstring.hardcopy, to format the docstrings differently for hard copy and other use. The ArtistInspector could use a little refactoring now since there is duplication of effort between the rest out put and the non-rest output - JDH 2008-12-08 Updated spectral methods (psd, csd, etc.) to scale one-sided densities by a factor of 2 and, optionally, scale all densities by the sampling frequency. This gives better MatLab compatibility. -RM

2008-12-08 Fixed alignment of ticks in colorbars. -MGD

2008-12-07 drop the deprecated "new" keyword of np.histogram() for numpy 1.2 or later. -JJL 2008-12-06 Fixed a bug in svg backend that new_figure_manager() ignores keywords arguments such as figsize, etc. -JJL 2008-12-05 Fixed a bug that the handlelength of the new legend class set too short when numpoints=1 -JJL 2008-12-04 Added support for data with units (e.g., dates) to Axes.fill_between. -RM 2008-12-04 Added fancybox keyword to legend. Also applied some changes for better look, including baseline adjustment of the multiline texts so that it is center aligned. -JJL 2008-12-02 The transmuter classes in the are reorganized as subclasses of the Style classes. A few more box and arrow styles are added. -JJL 2008-12-02 Fixed a bug in the new legend class that didn't allowed a tuple of coordinate values as loc. -JJL 2008-12-02 Improve checks for external dependencies, using subprocess (instead of deprecated popen*) and distutils (for version checking) - DSD 2008-11-30 Reimplementation of the legend which supports baseline alignment, multi-column, and expand mode. - JJL 2008-12-01 Fixed histogram autoscaling bug when bins or range are given explicitly (fixes Debian bug 503148) - MM 2008-11-25 Added rcParam axes.unicode_minus which allows plain hyphen for minus when False - JDH 2008-11-25 Added scatterpoints support in Legend. patch by Erik Tollerud - JJL

2008-11-24 Fix crash in log ticking. - MGD

2008-11-20 Added static helper method BrokenHBarCollection.span_where and Axes/pyplot method fill_between. See examples/pylab/ - JDH 2008-11-12 Add x_isdata and y_isdata attributes to Artist instances, and use them to determine whether either or both coordinates are used when updating dataLim. This is used to fix autoscaling problems that had been triggered by axhline, axhspan, axvline, axvspan. - EF 2008-11-11 Update the psd(), csd(), cohere(), and specgram() methods of Axes and the csd() cohere(), and specgram() functions in mlab to be in sync with the changes to psd(). In fact, under the hood, these all call the same core to do computations. - RM 2008-11-11 Add 'pad_to' and 'sides' parameters to mlab.psd() to allow controlling of zero padding and returning of negative frequency components, respecitively. These are added in a way that does not change the API. - RM 2008-11-10 Fix handling of c kwarg by scatter generalize is_string_like to accept numpy and string array scalars. - RM and EF 2008-11-09 Fix a possible EINTR problem in dviread, which might help when saving pdf files from the qt backend. - JKS

2008-11-05 Fix bug with zoom to rectangle and twin axes - MGD

2008-10-24 Added Jae Joon's fancy arrow, box and annotation enhancements -- see examples/pylab_examples/

2008-10-23 Autoscaling is now supported with shared axes - EF

2008-10-23 Fixed exception in dviread that happened with Minion - JKS

2008-10-21 set_xlim, ylim now return a copy of the viewlim array to avoid modify inplace surprises 2008-10-20 Added image thumbnail generating function matplotlib.image.thumbnail. See examples/misc/ - JDH 2008-10-20 Applied scatleg patch based on ideas and work by Erik Tollerud and Jae-Joon Lee. - MM 2008-10-11 Fixed bug in pdf backend: if you pass a file object for output instead of a filename, e.g., in a wep app, we now flush the object at the end. - JKS

2008-10-08 Add path simplification support to paths with gaps. - EF

2008-10-05 Fix problem with AFM files that don't specify the font's full name or family name. - JKS 2008-10-04 Added 'scilimits' kwarg to Axes.ticklabel_format() method, for easy access to the set_powerlimits method of the major ScalarFormatter. - EF 2008-10-04 Experimental new kwarg borderpad to replace pad in legend, based on suggestion by Jae-Joon Lee. - EF 2008-09-27 Allow spy to ignore zero values in sparse arrays, based on patch by Tony Yu. Also fixed plot to handle empty data arrays, and fixed handling of markers in figlegend. - EF 2008-09-24 Introduce drawstyles for lines. Transparently split linestyles like 'steps--' into drawstyle 'steps' and linestyle '--'. Legends always use drawstyle 'default'. - MM 2008-09-18 Fixed quiver and quiverkey bugs (failure to scale properly when resizing) and added additional methods for determining the arrow angles - EF

2008-09-18 Fix polar interpolation to handle negative values of theta - MGD

2008-09-14 Reorganized cbook and mlab methods related to numerical calculations that have little to do with the goals of those two modules into a separate module Also, added ability to select points and stop point selection with keyboard in ginput and manual contour labeling code. Finally, fixed contour labeling bug. - DMK

2008-09-11 Fix backtick in Postscript output. - MGD

2008-09-10 [ 2089958 ] Path simplification for vector output backends Leverage the simplification code exposed through path_to_polygons to simplify certain well-behaved paths in the vector backends (PDF, PS and SVG). "path.simplify" must be set to True in matplotlibrc for this to work. - MGD 2008-09-10 Add "filled" kwarg to Path.intersects_path and Path.intersects_bbox. - MGD 2008-09-07 Changed full arrows slightly to avoid an xpdf rendering problem reported by Friedrich Hagedorn. - JKS 2008-09-07 Fix conversion of quadratic to cubic Bezier curves in PDF and PS backends. Patch by Jae-Joon Lee. - JKS

2008-09-06 Added 5-point star marker to plot command - EF

2008-09-05 Fix hatching in PS backend - MGD

2008-09-03 Fix log with base 2 - MGD

2008-09-01 Added support for bilinear interpolation in NonUniformImage patch by Gregory Lielens. - EF 2008-08-28 Added support for multiple histograms with data of different length - MM

2008-08-28 Fix step plots with log scale - MGD

2008-08-28 Fix masked arrays with markers in non-Agg backends - MGD

2008-08-28 Fix clip_on kwarg so it actually works correctly - MGD

2008-08-25 Fix locale problems in SVG backend - MGD

2008-08-22 fix quiver so masked values are not plotted - JSW

2008-08-18 improve interactive pan/zoom in qt4 backend on windows - DSD

2008-08-11 Fix more bugs in NaN/inf handling. In particular, path simplification (which does not handle NaNs or infs) will be turned off automatically when infs or NaNs are present. Also masked arrays are now converted to arrays with NaNs for consistent handling of masks and NaNs - MGD and EF

2008-08-03 Released 0.98.3 at svn r5947

2008-08-01 Backported memory leak fixes in _ttconv.cpp - MGD

2008-07-31 Added masked array support to griddata. - JSW

2008-07-26 Added optional C and reduce_C_function arguments to axes.hexbin(). This allows hexbin to accumulate the values of C based on the x,y coordinates and display in hexagonal bins. - ADS 2008-07-24 Deprecated (raise NotImplementedError) all the mlab2 functions from matplotlib.mlab out of concern that some of them were not clean room implementations. JDH 2008-07-24 Rewrite of a significant portion of the clabel code (class ContourLabeler) to improve inlining. - DMK 2008-07-22 Added Barbs polygon collection (similar to Quiver) for plotting wind barbs. Added corresponding helpers to Axes and pyplot as well. (examples/pylab_examples/ shows it off.) - RMM 2008-07-21 Added scikits.delaunay as matplotlib.delaunay. Added griddata function in matplotlib.mlab, with example ( in pylab_examples. griddata function will use mpl_toolkits._natgrid if installed. - JSW 2008-07-21 Re-introduced offset_copy that works in the context of the new transforms. - MGD 2008-07-21 Committed patch by Ryan May to add get_offsets and set_offsets to Collections base class - EF 2008-07-21 Changed the "asarray" strategy in so that colormapping of masked input should work for all image types (thanks Klaus Zimmerman) - EF 2008-07-20 Rewrote cbook.delete_masked_points and corresponding unit test to support rgb color array inputs, datetime inputs, etc. - EF 2008-07-20 Renamed unit/ to and modified in accord with Ryan's move of delete_masked_points from axes to cbook. - EF 2008-07-18 Check for nan and inf in axes.delete_masked_points(). This should help hexbin and scatter deal with nans. - ADS 2008-07-17 Added ability to manually select contour label locations. Also added a waitforbuttonpress function. - DMK 2008-07-17 Fix bug with NaNs at end of path (thanks, Andrew Straw for the report) - MGD 2008-07-16 Improve error handling in texmanager, thanks to Ian Henry for reporting - DSD 2008-07-12 Added support for external backends with the "module://my_backend" syntax - JDH 2008-07-11 Fix memory leak related to shared axes. Grouper should store weak references. - MGD

2008-07-10 Bugfix: crash displaying fontconfig pattern - MGD

2008-07-10 Bugfix: [ 2013963 ] update_datalim_bounds in Axes not works - MGD

2008-07-10 Bugfix: [ 2014183 ] multiple imshow() causes gray edges - MGD

2008-07-09 Fix rectangular axes patch on polar plots bug - MGD

2008-07-09 Improve mathtext radical rendering - MGD

2008-07-08 Improve mathtext superscript placement - MGD

2008-07-07 Fix custom scales in pcolormesh (thanks Matthew Turk) - MGD

2008-07-03 Implemented findobj method for artist and pyplot - see examples/pylab_examples/ - JDH

2008-06-30 Another attempt to fix TextWithDash - DSD

2008-06-30 Removed Qt4 NavigationToolbar2.destroy -- it appears to have been unnecessary and caused a bug reported by P. Raybaut - DSD

2008-06-27 Fixed tick positioning bug - MM

2008-06-27 Fix dashed text bug where text was at the wrong end of the dash - MGD

2008-06-26 Fix mathtext bug for expressions like $x_$ - MGD

2008-06-26 Fix direction of horizontal/vertical hatches - MGD

2008-06-25 Figure.figurePatch renamed Figure.patch, Axes.axesPatch renamed Axes.patch, Axes.axesFrame renamed Axes.frame, Axes.get_frame, which returns Axes.patch, is deprecated. Examples and users guide updated - JDH

2008-06-25 Fix rendering quality of pcolor - MGD

2008-06-24 Released 0.98.2 at svn r5667 - (source only for debian) JDH

2008-06-24 Added "transparent" kwarg to savefig. - MGD

2008-06-24 Applied Stefan's patch to draw a single centered marker over a line with numpoints==1 - JDH

2008-06-23 Use splines to render circles in scatter plots - MGD

2008-06-22 Released 0.98.1 at revision 5637

2008-06-22 Removed axes3d support and replaced it with a NotImplementedError for one release cycle

2008-06-21 fix marker placement bug in backend_ps - DSD

2008-06-20 [ 1978629 ] scale documentation missing/incorrect for log - MGD

2008-06-20 Added closed kwarg to PolyCollection. Fixes bug [ 1994535 ] still missing lines on graph with svn (r 5548). - MGD 2008-06-20 Added set/get_closed method to Polygon fixes error in hist - MM 2008-06-19 Use relative font sizes (e.g., 'medium' and 'large') in and matplotlibrc.template so that text will be scaled by default when changing rcParams['font.size'] - EF 2008-06-17 Add a generic PatchCollection class that can contain any kind of patch. - MGD 2008-06-13 Change pie chart label alignment to avoid having labels overwrite the pie - MGD 2008-06-12 Added some helper functions to the mathtext parser to return bitmap arrays or write pngs to make it easier to use mathtext outside the context of an mpl figure. modified the mathpng sphinxext to use the mathtext png save functionality - see examples/api/ - JDH 2008-06-11 Use matplotlib.mathtext to render math expressions in online docs - MGD 2008-06-11 Move PNG loading/saving to its own extension module, and remove duplicate code in _backend_agg.cpp and _image.cpp that does the same thing - MGD 2008-06-11 Numerous mathtext bugfixes, primarily related to dpi-independence - MGD 2008-06-10 Bar now applies the label only to the first patch only, and sets '_nolegend_' for the other patch labels. This lets autolegend work as expected for hist and bar - see JDH 2008-06-10 Fix text baseline alignment bug. [ 1985420 ] Repair of baseline alignment in Text._get_layout. Thanks Stan West - MGD 2008-06-09 Committed Gregor's image resample patch to downsampling images with new rcparam image.resample - JDH 2008-06-09 Don't install Enthought.Traits along with matplotlib. For matplotlib developers convenience, it can still be installed by setting an option in setup.cfg while we figure decide if there is a future for the traited config - DSD

2008-06-09 Added range keyword arg to hist() - MM

2008-06-07 Moved list of backends to made use of lower case for backend names consistent use validate_backend when importing backends subpackage - EF 2008-06-06 hist() revision, applied ideas proposed by Erik Tollerud and Olle Engdegard: make histtype='step' unfilled by default and introduce histtype='stepfilled' use default color cycle introduce reverse cumulative histogram new align keyword - MM 2008-06-06 Fix closed polygon patch and also provide the option to not close the polygon - MGD 2008-06-05 Fix some dpi-changing-related problems with PolyCollection, as called by Axes.scatter() - MGD 2008-06-05 Fix image drawing so there is no extra space to the right or bottom - MGD 2006-06-04 Added a figure title command suptitle as a Figure method and pyplot command -- see examples/ - JDH 2008-06-02 Added support for log to hist with histtype='step' and fixed a bug for log-scale stacked histograms - MM

2008-05-29 Released 0.98.0 at revision 5314

2008-05-29 matplotlib.image.imread now no longer always returns RGBA -- if the image is luminance or RGB, it will return a MxN or MxNx3 array if possible. Also uint8 is no longer always forced to float.

2008-05-29 Implement path clipping in PS backend - JDH

2008-05-29 Fixed two bugs in improved comparison of dvipng versions fixed a bug introduced when get_grey method was added - DSD 2008-05-28 Fix crashing of PDFs in xpdf and ghostscript when two-byte characters are used with Type 3 fonts - MGD 2008-05-28 Allow keyword args to configure widget properties as requested in - JDH 2008-05-28 Replaced '-' with u'u2212' for minus sign as requested in 2008-05-28 zero width/height Rectangles no longer influence the autoscaler. Useful for log histograms with empty bins - JDH 2008-05-28 Fix rendering of composite glyphs in Type 3 conversion (particularly as evidenced in the Eunjin.ttf Korean font) Thanks Jae-Joon Lee for finding this! 2008-05-27 Rewrote the cm.ScalarMappable callback infrastructure to use cbook.CallbackRegistry rather than custom callback handling. Amy users of add_observer/notify of the cm.ScalarMappable should uae the cm.ScalarMappable.callbacksSM CallbackRegistry instead. JDH 2008-05-27 Fix TkAgg build on Ubuntu 8.04 (and hopefully a more general solution for other platforms, too.) 2008-05-24 Added PIL support for loading images to imread (if PIL is available) - JDH 2008-05-23 Provided a function and a method for controlling the plot color cycle. - EF 2008-05-23 Major revision of hist(). Can handle 2D arrays and create stacked histogram plots keyword 'width' deprecated and rwidth (relative width) introduced align='edge' changed to center of bin - MM 2008-05-22 Added support for ReST-based doumentation using Sphinx. Documents are located in doc/, and are broken up into a users guide and an API reference. To build, run the files. Sphinx-0.4 is needed to build generate xml, which will be useful for rendering equations with mathml, use sphinx from svn until 0.4 is released - DSD

2008-05-21 Fix segfault in TkAgg backend - MGD

2008-05-21 Fix a "local variable unreferenced" bug in plotfile - MM

2008-05-19 Fix crash when Windows can not access the registry to determine font path [Bug 1966974, thanks Patrik Simons] - MGD 2008-05-16 removed some unneeded code w/ the python 2.4 requirement. cbook no longer provides compatibility for reversed, enumerate, set or izip. removed lib/subprocess, mpl1, sandbox/units, and the swig code. This stuff should remain on the maintenance branch for archival purposes. JDH

2008-05-16 Reorganized examples dir - JDH

2008-05-16 Added 'elinewidth' keyword arg to errorbar, based on patch by Christopher Brown - MM 2008-05-16 Added 'cumulative' keyword arg to hist to plot cumulative histograms. For normed hists, this is normalized to one - MM

2008-05-15 Fix Tk backend segfault on some machines - MGD

2008-05-14 Don't use stat on Windows (fixes font embedding problem) - MGD

2008-05-09 Fix /singlequote (') in Postscript backend - MGD

2008-05-08 Fix kerning in SVG when embedding character outlines - MGD

2008-05-07 Switched to future numpy histogram semantic in hist - MM

2008-05-06 Fix strange colors when blitting in QtAgg and Qt4Agg - MGD

2008-05-05 pass notify_axes_change to the figure's add_axobserver in the qt backends, like we do for the other backends. Thanks Glenn Jones for the report - DSD

2008-05-02 Added step histograms, based on patch by Erik Tollerud. - MM

2008-05-02 On PyQt <= 3.14 there is no way to determine the underlying Qt version. [1851364] - MGD 2008-05-02 Don't call sys.exit() when pyemf is not found [1924199] - MGD 2008-05-02 Update _subprocess.c from upstream Python 2.5.2 to get a few memory and reference-counting-related bugfixes. See bug 1949978. - MGD 2008-04-30 Added some record array editing widgets for gtk -- see examples/rec_edit*.py - JDH

2008-04-29 Fix bug in mlab.sqrtm - MM

2008-04-28 Fix bug in SVG text with Mozilla-based viewers (the symbol tag is not supported) - MGD 2008-04-27 Applied patch by Michiel de Hoon to add hexbin axes method and pyplot function - EF

2008-04-25 Enforce python >= 2.4 remove subprocess build - EF

2008-04-25 Enforce the numpy requirement at build time - JDH

2008-04-24 Make numpy 1.1 and python 2.3 required when importing matplotlib - EF 2008-04-24 Fix compilation issues on VS2003 (Thanks Martin Spacek for all the help) - MGD 2008-04-24 Fix sub/superscripts when the size of the font has been changed - MGD

2008-04-22 Use "svg.embed_char_paths" consistently everywhere - MGD

2008-04-20 Add support to MaxNLocator for symmetric axis autoscaling. - EF

2008-04-20 Fix double-zoom bug. - MM

2008-04-15 Speed up colormapping. - EF

2008-04-12 Speed up zooming and panning of dense images. - EF

2008-04-11 Fix global font rcParam setting after initialization time. - MGD 2008-04-11 Revert commits 5002 and 5031, which were intended to avoid an unnecessary call to draw(). 5002 broke saving figures before show(). 5031 fixed the problem created in 5002, but broke interactive plotting. Unnecessary call to draw still needs resolution - DSD 2008-04-07 Improve color validation in rc handling, suggested by Lev Givon - EF 2008-04-02 Allow to use both linestyle definition arguments, '-' and 'solid' etc. in plots/collections - MM 2008-03-27 Fix saving to Unicode filenames with Agg backend (other backends appear to already work. ) (Thanks, Christopher Barker) - MGD 2008-03-26 Fix SVG backend bug that prevents copying and pasting in Inkscape (thanks Kaushik Ghose) - MGD 2008-03-24 Removed an unnecessary call to draw() in the backend_qt* mouseReleaseEvent. Thanks to Ted Drain - DSD 2008-03-23 Fix a pdf backend bug which sometimes caused the outermost gsave to not be balanced with a grestore. - JKS 2008-03-20 Fixed a minor bug in ContourSet._process_linestyles when len(linestyles)==Nlev - MM 2008-03-19 Changed ma import statements to "from numpy import ma" this should work with past and future versions of numpy, whereas "import as ma" will work only with numpy >= 1.05, and "import numerix.npyma as ma" is obsolete now that maskedarray is replacing the earlier implementation, as of numpy 1.05. 2008-03-14 Removed an apparently unnecessary call to FigureCanvasAgg.draw in backend_qt*agg. Thanks to Ted Drain - DSD 2008-03-10 Workaround a bug in backend_qt4agg's blitting due to a buffer width/bbox width mismatch in _backend_agg's copy_from_bbox - DSD 2008-02-29 Fix class Wx toolbar pan and zoom functions (Thanks Jeff Peery) - MGD 2008-02-16 Added some new rec array functionality to mlab (rec_summarize, rec2txt and rec_groupby). See examples/ Thanks to Tim M for rec2txt.

2008-02-12 Applied Erik Tollerud's span selector patch - JDH

2008-02-11 Update plotting() doc string to refer to getp/setp. - JKS

2008-02-10 Fixed a problem with square roots in the pdf backend with usetex. - JKS

2008-02-08 Fixed minor __str__ bugs so getp(gca()) works. - JKS

2008-02-05 Added getters for title, xlabel, ylabel, as requested by Brandon Kieth - EF 2008-02-05 Applied Gael's ginput patch and created examples/ - JDH 2008-02-03 Expose interpnames, a list of valid interpolation methods, as an AxesImage class attribute. - EF 2008-02-03 Added BoundaryNorm, with examples in and - EF

2008-02-03 Force dpi=72 in pdf backend to fix picture size bug. - JKS

2008-02-01 Fix doubly-included font problem in Postscript backend - MGD

2008-02-01 Fix reference leak in ft2font Glyph objects. - MGD

2008-01-31 Don't use unicode strings with usetex by default - DSD

2008-01-31 Fix text spacing problems in PDF backend with some fonts, such as STIXGeneral. 2008-01-31 Fix sqrt with radical number (broken by making [ and ] work below) - MGD 2008-01-27 Applied Martin Teichmann's patch to improve the Qt4 backend. Uses Qt's builtin toolbars and statusbars. See bug 1828848 - DSD 2008-01-10 Moved toolkits to mpl_toolkits, made mpl_toolkits a namespace package - JSWHIT 2008-01-10 Use setup.cfg to set the default parameters (tkagg, numpy) when building windows installers - DSD

2008-01-10 Fix bug displaying [ and ] in mathtext - MGD

2008-01-10 Fix bug when displaying a tick value offset with scientific notation. (Manifests itself as a warning that the times symbol can not be found). - MGD 2008-01-10 Use setup.cfg to set the default parameters (tkagg, numpy) when building windows installers - DSD

2008-01-06 Released 0.91.2 at revision 4802

2007-12-26 Reduce too-late use of matplotlib.use() to a warning instead of an exception, for backwards compatibility - EF

2007-12-25 Fix bug in errorbar, identified by Noriko Minakawa - EF

2007-12-25 Changed masked array importing to work with the upcoming numpy 1.05 (now the maskedarray branch) as well as with earlier versions. - EF 2007-12-16 rec2csv saves doubles without losing precision. Also, it does not close filehandles passed in open. - JDH,ADS 2007-12-13 Moved rec2gtk to matplotlib.toolkits.gtktools and rec2excel to matplotlib.toolkits.exceltools - JDH 2007-12-12 Support alpha-blended text in the Agg and Svg backends - MGD

2007-12-10 Fix SVG text rendering bug. - MGD

2007-12-10 Increase accuracy of circle and ellipse drawing by using an 8-piece bezier approximation, rather than a 4-piece one. Fix PDF, SVG and Cairo backends so they can draw paths (meaning ellipses as well). - MGD

2007-12-07 Issue a warning when drawing an image on a non-linear axis. - MGD

2007-12-06 let widgets.Cursor initialize to the lower x and y bounds rather than 0,0, which can cause havoc for dates and other transforms - DSD

2007-12-06 updated references to mpl data directories for py2exe - DSD

2007-12-06 fixed a bug in rcsetup, see bug 1845057 - DSD

2007-12-05 Fix how fonts are cached to avoid loading the same one multiple times. (This was a regression since 0.90 caused by the refactoring of - MGD

2007-12-05 Support arbitrary rotation of usetex text in Agg backend. - MGD

2007-12-04 Support '|' as a character in mathtext - MGD

2007-11-27 Released 0.91.1 at revision 4517

2007-11-27 Released 0.91.0 at revision 4478

2007-11-13 All backends now support writing to a file-like object, not just a regular file. savefig() can be passed a file-like object in place of a file path. - MGD 2007-11-13 Improved the default backend selection at build time: SVG -> Agg -> TkAgg -> WXAgg -> GTK -> GTKAgg. The last usable backend in this progression will be chosen in the default config file. If a backend is defined in setup.cfg, that will be the default backend - DSD 2007-11-13 Improved creation of default config files at build time for traited config package - DSD 2007-11-12 Exposed all the build options in setup.cfg. These options are read into a dict called "options" by Also, added "-mpl" tags to the version strings for packages provided by matplotlib. Versions provided by mpl will be identified and updated on subsequent installs - DSD 2007-11-12 Added support for STIX fonts. A new rcParam,

mathtext.fontset, can be used to choose between:

'cm': The TeX/LaTeX Computer Modern fonts 'stix': The STIX fonts (see 'stixsans': The STIX fonts, using sans-serif glyphs by default 'custom': A generic Unicode font, in which case the mathtext font must be specified using,, mathtext.sf etc.

Added a new example, to show how to access different fonts and unusual symbols.

2007-11-08 Updated pytz to version 2007g - DSD

2007-11-08 Updated pyparsing to version 1.4.8 - DSD

2007-11-08 Moved csv2rec to recutils and added other record array utilities - JDH

2007-11-08 If available, use existing pyparsing installation - DSD

2007-11-07 Removed old enthought.traits from lib/matplotlib, added Gael Varoquaux's enthought.traits-2.6b1, which is stripped of setuptools. The package is installed to site-packages if not already available - DSD 2007-11-05 Added easy access to minor tick properties slight mod of patch by Pierre G-M - EF 2007-11-02 Committed Phil Thompson's patch 1599876, fixes to Qt4Agg backend and qt4 blitting demo - DSD 2007-11-02 Committed Phil Thompson's patch 1599876, fixes to Qt4Agg backend and qt4 blitting demo - DSD 2007-10-31 Made log color scale easier to use with contourf automatic level generation now works. - EF


The primary goal of this refactoring was to make it easier to extend matplotlib to support new kinds of projections. This is primarily an internal improvement, and the possible user-visible changes it allows are yet to come.

The transformation framework was completely rewritten in Python (with Numpy). This will make it easier to add news kinds of transformations without writing C/C++ code.

Transforms are composed into a 'transform tree', made of transforms whose value depends on other transforms (their children). When the contents of children change, their parents are automatically updated to reflect those changes. To do this an "invalidation" method is used: when children change, all of their ancestors are marked as "invalid". When the value of a transform is accessed at a later time, its value is recomputed only if it is invalid, otherwise a cached value may be used. This prevents unnecessary recomputations of transforms, and contributes to better interactive performance.

The framework can be used for both affine and non-affine transformations. However, for speed, we want use the backend renderers to perform affine transformations whenever possible. Therefore, it is possible to perform just the affine or non-affine part of a transformation on a set of data. The affine is always assumed to occur after the non-affine. For any transform:

Much of the drawing has been refactored in terms of compound paths. Therefore, many methods have been removed from the backend interface and replaced with a a handful to draw compound paths. This will make updating the backends easier, since there is less to update. It also should make the backends more consistent in terms of functionality.

POLAR PLOTS: Polar plots are now interactively zoomable, and the r-axis labels can be interactively rotated. Straight line segments are now interpolated to follow the curve of the r-axis.

Non-rectangular clipping works in more backends and with more types of objects.

Sharing an axis across figures is now done in exactly the same way as sharing an axis between two axes in the same figure:

linestyles now include steps-pre, steps-post and steps-mid. The old step still works and is equivalent to step-pre.

Multiple line styles may be provided to a collection.

See API_CHANGES for more low-level information about this refactoring.

2007-10-24 Added ax kwarg to Figure.colorbar and pyplot.colorbar - EF

2007-10-19 Removed a gsave/grestore pair surrounding _draw_ps, which was causing a loss graphics state info (see "EPS output problem - scatter & edgecolors" on mpl-dev, 2007-10-29) - DSD 2007-10-15 Fixed a bug in patches.Ellipse that was broken for aspect='auto'. Scale free ellipses now work properly for equal and auto on Agg and PS, and they fall back on a polygonal approximation for nonlinear transformations until we convince oursleves that the spline approximation holds for nonlinear transformations. Added unit/ to compare spline with vertex approx for both aspects. JDH 2007-10-05 remove generator expressions from texmanager and mpltraits. generator expressions are not supported by python-2.3 - DSD 2007-10-01 Made matplotlib.use() raise an exception if called after backends has been imported. - EF 2007-09-30 Modified update* methods of Bbox and Interval so they work with reversed axes. Prior to this, trying to set the ticks on a reversed axis failed with an uninformative error message. - EF

2007-09-30 Applied patches to axes3d to fix index error problem - EF

2007-09-24 Applied Eike Welk's patch reported on mpl-dev on 2007-09-22 Fixes a bug with multiple plot windows in the qt backend, ported the changes to backend_qt4 as well - DSD 2007-09-21 Changed cbook.reversed to yield the same result as the python reversed builtin - DSD 2007-09-13 The usetex support in the pdf backend is more usable now, so I am enabling it. - JKS

2007-09-12 Fixed a unit bug - JDH

2007-09-10 Made skiprows=1 the default on csv2rec - JDH

2007-09-09 Split out the plotting part of pylab and put it in removed numerix from the remaining, which imports everything from The intention is that apart from cleanups, the result of importing from pylab is nearly unchanged, but there is the new alternative of importing from pyplot to get the state-engine graphics without all the numeric functions. Numpified examples deleted two that were obsolete modified some to use pyplot. - EF

2007-09-08 Eliminated gd and paint backends - EF

2007-09-06 .bmp file format is now longer an alias for .raw

2007-09-07 Added clip path support to pdf backend. - JKS

2007-09-06 Fixed a bug in the embedding of Type 1 fonts in PDF. Now it doesn't crash - JKS 2007-09-06 Refactored image saving code so that all GUI backends can save most image types. See FILETYPES for a matrix of backends and their supported file types. Backend canvases should no longer write their own print_figure() method -- instead they should write a print_xxx method for each filetype they can output and add an entry to their class-scoped filetypes dictionary. - MGD

2007-09-05 Fixed Qt version reporting in - DSD

2007-09-04 Embedding Type 1 fonts in PDF, and thus usetex support via dviread, sort of works. To test, enable it by renaming _draw_tex to draw_tex. - JKS 2007-09-03 Added ability of errorbar show limits via caret or arrowhead ends on the bars patch by Manual Metz. - EF 2007-09-03 Created, added features to AFM and FT2Font (see API_CHANGES), started work on embedding Type 1 fonts in pdf files. - JKS

2007-09-02 Continued work on - JKS

2007-08-16 Added a set_extent method to AxesImage, allow data extent to be modified after initial call to imshow - DSD 2007-08-14 Fixed a bug in pyqt4 subplots-adjust. Thanks to Xavier Gnata for the report and suggested fix - DSD 2007-08-13 Use pickle to cache entire fontManager change to using font_manager module-level function findfont wrapper for the fontManager.findfont method - EF

2007-08-11 Numpification and cleanup of and some examples - EF

2007-08-06 Removed mathtext2

  • Will not fail on the entire build if an optional Python package (e.g., Tkinter) is installed but its development headers are not (e.g., tk-devel). Instead, it will continue to build all other extensions.
  • Provide an overview at the top of the output to display what dependencies and their versions were found, and (by extension) what will be built.
  • Use pkg-config, when available, to find freetype2, since this was broken on Mac OS-X when using MacPorts in a non- standard location.

2007-07-26 Major rewrite of, using the TeX box layout model.

  • Math may be interspersed with non-math text. Any text with an even number of

    2004-03-29 Fixed fontdicts and kwargs to work with new font manager - JDH

    This is the Old, stale, never used changelog

    2002-12-10 - Added a TODO file and CHANGELOG. Lots to do -- get

    2002-12-11 - Added a measurement dialog to the figure window to
    measure axes position and the delta x delta y with a left
    mouse drag. These defaults can be overridden by deriving
    from Figure and overrriding button_press_event,
    button_release_event, and motion_notify_event,
    and _dialog_measure_tool.

    2003-11-20 - problem with stale _set_font. legend axes box
    doesn't resize on save in GTK backend -- see htdocs

    2003-11-21 - make a dash-dot dict for the GC

    2003-12-15 - fix install path bug

    2003-04-24 Added a new line style PixelLine2D which is the plots the
    markers as pixels (as small as possible) with format
    symbol ','

    2003-04-25 Implemented new functions errorbar, scatter and hist

    • Added pcolor plot
    • Added MRI example
    • Fixed bug that screwed up label position if xticks or yticks were
    • added nearest neighbor color picker when GD max colors exceeded
    • fixed figure background color bug in GD backend
    • major refactoring.
      • Ticks (with labels, lines and grid) handled by dedicated class
      • Artist now know bounding box and dpi
      • Bounding boxes and transforms handled by dedicated classes
      • legend in dedicated class. Does a better job of alignment and
        bordering. Can be initialized with specific line instances.
        See examples/

      Elpy -> 1.12.0

      • Some symbols can now be completed with parentheses after them,
        useful for functions. The heuristic for when to add parentheses and
        not is not optimal, so this is not enabled by default—customize
        elpy-company-post-completion-function to enable this feature.
      • Support dedicated Python shells (one per Python file). You can
        customized elpy-dedicated-shells to make this the default.
      • Elpy now uses python -m pip instead of pip directly to improve
        interaction with virtualenvs.
      • Support for Python 2.6 has been officially dropped.
      • Display for backend errors has been disabled by default. Jedi has
        not had a release in a long while, and many bugs have been unfixed.
        These errors have only caused added workload for Elpy maintainers.
        The option will be reverted once Jedi has had a new release.
      • Elpy now supports yapf to format your code.
      • You can now adjust whether Elpy should hide modes from the mode line
        or not using elpy-remove-modeline-lighter
      • When the new option elpy-disable-backend-error-display is set,
        Elpy will not show its error pop-up anymore. This can be useful if
        you run into an annoying bug in Jedi, for example.
      • New command elpy-goto-definition-other-window on C-x 4 M-. .
      • Expanding super now gives the short form supported in Python 3.
      • All Rope errors are now caught, as the upstream maintainers did not
        show interest in distinguishing between malformed input and bugs in
        their library.
      • Marking the current indentation level at the top level will now mark
        the whole buffer.
      • The region will be normalized before re-indenting it, making the
        behavior more predictable for partially marked lines.
      • Using autopep8 on the whole buffer will now keep point (roughly) at
        the same location as it was.
      • The autopep8 code now also uses the same configuration options as
        the command line tool.
      • Malformed JSON data from the backend is now handled better.
      • RPC processes are restarted when the current virtualenv changes.
      • Python 3.5 is now officially supported.
      • Flymake will now not be enabled in buffers without file name, where
        it can't run anyhow, or when the checker program does not exist in
        the first place.
      • It is now possible to ask Elpy not to remove the mode line lighter
        of company mode, which can be useful if you use company in other
      • Test discovery now also allows file names without "test" in them to
        be tested. Classes and methods still require the substring, though.
      • Spurious equals signs at the end of completions from Jedi will now
        be ignored.
      • Various other bug fixes.
      • Elpy now supports the autopep8 library for automatically
        formatting Python code. All refactoring-related code is now grouped
        under C-c C-r . Use C-c C-r i to fix up imports using
        importmagic, C-c C-r p to fix up Python code with autopep8, and
        C-c C-r r to bring up the old Rope refactoring menu.
      • C-c C-b will now select a region containing surrounding lines of
        the current indentation or more.
      • C-c C-z in a Python shell will now switch back to the last
        Python buffer, allowing to use the key to cycle back and forth
        between the Python buffer and shell.
      • The pattern used for C-c C-s is now customizeable in
        elpy-rgrep-file-pattern .
      • &ltC-return&gt now can be used to send the current statement to the
        Python shell. Be careful, this can break with nested statements.
      • The Elpy minor mode now also works in modes derived from
        python-mode , not just in the mode itself.
      • Emacs 24.5 is now officially supported
      • The new configuration option elpy-rpc-ignored-buffer-size defines a maximum buffer size to be handle completion in, to avoid laggy interaction in unusually large files
      • Indentation block movement was replaced with code that just moves the marked block or the current line this should be a lot less magical and more predictable
      • Running the test at point now correctly ignores any inner methods
      • Jedi docstrings now show the full name of the object
      • The RPC interpreter is now chosen correctly on cygwin
      • elpy-shell-send-region-or-buffer now warns of tabs in the data being sent
      • Elpy now binds stdout and stderr to /dev/null to avoid being confused by spurious output from other libraries
      • RPC buffers (and processes) are removed after some time to avoid them piling up endlessly
      • It is not possibly anymore to use customize alone to use ipython, because of some bad interaction between custom options in Elpy and python.el
      • And lots of bugfixes (50 issues closed!)
      • Do not fail on errors from importmagic.
      • Handle new minor mode behavior of new versions of yasnippet.
      • Do use the argument to elpy-use-ipython correctly.
      • Handle unexpected data from the backend more gracefully.
      • Elpy now can add missing import directives automatically, by using
        Alec Thomas' excellent importmagic_ library. Use C-c C-m to add
        a single import statement, or C-c C-S-m to include all missing
        import statements. Many thanks to Georg Brandl for doing a lot of
        work to bring this feature to Elpy!
      • The Jedi backend now also supports C-c C-d to display a
        docstring. Thanks again to Georg Brandl for the patch.
      • It is now possible to disable the display of the current function in
        the echo area by setting elpy-eldoc-show-current-function to
        nil .
      • idomenu was removed.
      • Twisted's Trial test runner is now supported. Thanks to Elric Milon
        for the patch!
      • All test runners now use a variable to decide which command to run,
        which for example allows using for the Django test
        runner, or your own test script which sets up the environment
      • Emacs 24.4 is now officially supported.
      • Various bugfixes.
      • When point is on a line with a flymake error, Elpy will now show the
        error in the echo area.
      • The movement commands ( C-&ltcursor&gt ) have been reworked again.
        Going left and right will now move by indentation levels left of the
        current indentation, i.e. jump four spaces, and by words right of
        the current indentation. Going up and down will go to the previous
        or next line with the indentation level point is at, not the
        indentation the line has. Try it, it's more difficult to explain
        than to use.
      • Completion results are now sorted more sensibly, with
        single-underscore symbols at the end, and double-underscore symbols
        after normal symbols, but before single-underscore ones.
      • M-x elpy-config will now point out if there are newer versions
        available for packages used by Elpy.
      • M-x elpy-config will now warn if
      • Fix a bug where company-mode might get confused about the current
        backend, leading to an error about Symbol&#39s function definition is void: nil
      • Fix Rope so it won’t search the whole project directory. This was an
        intended feature in v1.5 which did not work originally.
      • Use yas-text instead of text in snippets for compatibility
        with the unreleased yasnippet from MELPA (thanks to Daniel Wu!)
      • Elpy now has a manual _. Additionally, there's a menu bar now which
        should make it easier to discover Elpy features.
      • The Elpy Python package now ships with the Emacs Lisp package,
        removing the need to install Elpy via pip.
      • Python 3.4 is now officially supported.
      • The new command elpy-config can be used to configure Elpy using
        Emacs' built-in customize system. Elpy has been changed to make the
        most of this.
      • Elpy now uses company-mode instead of auto-complete for on-the-fly
        auto completion. This changes a few things. There is no automatic
        documentation popup anymore. Instead, you can type C-d and get
        the documentation buffer. In addition, you can type C-w to see
        the source of the current candidate in context.
      • Elpy now uses pyvenv as the virtualenv module, enabling
        virtualenvwrapper hooks.
      • We now ship with a large number of YASnippet snippets. Try M-x yas-insert-snippet .
      • The new unified test running interface on C-c C-t will try to
        determine the current test and run it, or, failing that, run all
        tests. Provide a prefix argument to just run all tests no matter
        what. You can change the test runner to be used using
        elpy-set-test-runner . Elpy supports the default unittest
        discover runner, the Django discover runner, nosetests and py.test
        by default. New test runners can easily be defined.
      • There's a new multi-edit functionality. C-c C-e will edit all
        occurrences of the symbol under point. When using Jedi, this is
        using semantic information as opposed to just syntactic one. When a
        region is active, edit all occurrences of the text in region in the
        current buffer.
      • When sending Python code to the interactive interpreter using C-c C-c , Elpy will now not automatically pop to the interpreter
        anymore. Use C-c C-z to switch to the interpreter.
      • Elpy will now display the current class and function if there is no
        call tip to be displayed. Removes the C-c C-q binding.
      • If there is a call tip, highlight the current argument (requires Jedi).
      • The documentation interface using C-c C-d is much smarter now,
        falling back to pydoc when necessary and providing sensible
        completion for that, too. Provide a prefix argument if you want no
        smarts, just pydoc.
      • &ltS-return&gt and &ltC-S-return&gt now open a line below or above
        the current one.
      • &ltC-cursor&gt will now navigate between Python blocks of the same
        indentation level. &ltM-cursor&gt will move the current block. Try
        it, it's easier to understand when you see it than to explain it.
      • There's a new concept of modules. The variable
        elpy-default-minor-modes is gone (use elpy-mode-hook for
        minor modes). Instead, there's now elpy-modules which can be
        used to enable or disable certain features of Elpy.
      • elpy-clean-modeline is gone, modules now clean themselves up.
      • Elpy now distinguishes between the project root, where project files
        are located, and the library root, which should be part of
        sys.path to import the module under development.
      • elpy-project-ignored-directories replaces the old
        elpy-rgrep-ignored-directories and is used by more features.
      • elpy-doc-websearch has been removed as it was barely useable
        as is.
      • Elpy now tries to be more helpful when errors in the backend happen.
        This removes elpy-rpc-traceback , as that will be displayed by
      • Optimizations were added to handle large files, making general
        interaction a lot faster.
      • When Rope is being used, do not search through unusually large
        directories. This should speed up interaction in those cases,
        especially when editing a file in the home directory.
      • And a whole lot of minor bug fixes and little improvements.
      • Minor bugfix to prevent an error from projectile-project-root to
        interfere with Elpy’s project finding strategy.
      • Elpy now sets project-wide preferences for Rope, enabling completion
        in the sys package, among others.
      • An error is avoided in the Jedi backend when trying to go to symbols
        in compiled packages.
      • A compatibility alias was added for nose.el, which insists on
        breaking backwards compatibility with Emacs 24.x.
      • Elpy has moved to its own ELPA. Make sure to update your
        package-archives (as described above).
      • For a file in a Projectile-managed project is opened, Elpy will now
        use Projectile’s project root.
      • When the user has set a valid python-check-command, elpy will now
        refrain from overriding it.
      • On Windows, elpy is now using the pythonw.exe interpreter for the
        RPC process, as that seems to be causing fewer issues.
      • And various smaller bugfixes.
      • virtualenv.el has been replaced by pyvenv.el, as that library offers
        more features.
      • elpy-rpc-restart now works globally, not just in Elpy buffers.
      • Elpy does not try to complete in comments anymore.
      • The new command elpy-rpc-traceback gives access to the last stack
        trace in the Elpy backend, helping with debugging problems.
      • The flymake check function is now run with the current directory as
        / to avoid accidental imports.
      • Ensure correct handling of yas-snippet-dirs by Elpy. This variable
        can be a string, so ensure it’s a list before adding to it.
      • The new variable elpy-show-installation-instructions can be used to
        disable the installation screen.
      • Fix a very nasty bug causing spurious empty lines in a buffer or
        consume 100% CPU in certain situations when using the Jedi backend.
        Thanks to Matthias Dahl for finding this bug.
      • Various other bugfixes.
      • The refactoring was not ported to the new asynchronous API,
        resulting in an error when refactoring was attempted.
      • The project root now always returns a directory. Too many parts of
        elpy relies on this. If the project root turns out to be your home
        directory, elpy will warn you about it.
      • Elpy now works correctly with Emacs 24.2. There were some
        compatibility functions missing.
      • Blocking RPC calls now do not block for one second even if there is
        process output.
      • Elpy now uses asynchronous RPC. This means that Emacs should not
        freeze anymore while eldoc or auto-complete functions run.
      • elpy-shell-send-region-or-buffer will now remove common
        indentation of the region, making it possible to easily send parts
        of an if statement or function body without manually adjusting the
      • The Python package depends on flake8 , and will also try to be
        smarter when detecting flake8 for on-the-fly checking.
      • elpy-check can be run with a prefix argument to check the whole
        project, instead of only the current file.
      • elpy-rgrep-symbol now ignores a few common directories
        ( .tox , build , dist ).
      • When using the rope backend, Elpy will not create the
        .ropeproject folders anymore. This should keep projects a lot
      • Elpy now always uses the root directory of the package as the
        project root this should avoid some confusion and improve
        auto-completion suggestions
      • elpy-shell-send-region-or-buffer now accepts a prefix argument
        to run code wrapped behind if __name__ == &#39__main__&#39 , which is
        ignored by default
      • elpy-project-root is now a safe local variable and can be set
        from file variables
      • Elpy now supports project-specific RPC processes, see
        elpy-rpc-project-specific for how to use this
      • M-* now works to go back where you came from after a M-.
      • Elpy now ships with a few dedicated snippets for YASnippet
      • Support and require Jedi 0.6.0
      • Version 0.9 was a release candidate, so this release focused on bug
        fixes instead of new features.
      • elpy-enable now takes an optional argument that skips variable
        initialization for those users who prefer their own defaults for
        other modes.
      • has been removed from Elpy, as the flake8 tool
        from pypi does everything it does, only better.
      • Elpy will now start the helper subprocess in the root directory,
        avoiding accidental Python path clobbering.
      • Elpy now officially support Python 2.6, 2.7 and 3.3 on Emacs 24.2
        and 24.3, with continuous integration tests thanks to
        Travis CI _.
      • Extended support for Pydoc. C-u C-c C-d will now prompt for an
        auto-completed symbol to run Pydoc on. The pydoc output will be
        formatted and placed in a help buffer for easy review.
      • Refactoring support is back. C-c C-r will pop up a refactoring
        wizard offering various refactoring options. Most of them depend on
        the presence of Rope, though, even if Jedi is used as a completion
      • The Rope backend has been extended to provide completions for
        modules in an import clause.
      • New refactoring option: Add missing imports. This will search for
        undefined symbols in the current file and automatically add
        appropriate imports.
      • C-c C-c (elpy-rgrep-symbol) now prompts for a regexp when a prefix
        argument is given instead of using the symbol at point.

      Cause & Consequences

      What is climate change?

      Changes in the climate are not something new.

      In the past, natural factors, such as volcanic eruptions and El Niño, caused fluctuations in the temperature and rainfall. What is new, is the influence of humans on climate change. We drive our cars, are heating our houses when it is cold outside, and use energy to cook. These day to day activities cause the emission of greenhouse gasses, such as methane and carbon. These gasses prevent the heat emitted by the earth to escape, causing global warming.

      What are the consequences of climate change?

      Global warming has various consequences.

      Heat waves occur more often, rainfall becomes more intense and the sea level rises. Especially within vulnerable areas, such as Sub-Saharan Africa, the consequences of climate change are felt on a daily basis. Extreme heat and the lack of rain cause drought, with crop failure as a consequence. When rain does arrive, the showers are really intense, leaving no time for the water to infiltrate into the soil, causing it to flood to lower areas, washing away the fertile top layer of the soil. A process called erosion. It leads to degradation of the land, making it hard to grow crops, causing a decline of vegetation and maintain the land to be dry. This could lead to food shortage for the local communities. Since they are not assured to have food, the people migrate to other areas, hoping to find fertile soil where they can grow their crops. These people are also called climate refugees. They are forced to flee due to the consequences of climate change.

      Change Donut or Pie Chart Settings

      Within the dashboard, a panel can display a pie or a donut chart, and you can toggle between the two as you choose. Both types of charts can display multiple slices at once, and the number of slices being displayed can be changed.

      To change a Donut or Pie chart:

      1. On the Dashboards page, select the Edit button.
      2. Click the Panel's Settings icon.
      3. In the Settings dialog, click General.
      4. Under Display, select:
        • Donut. (Default) Displays a hole in the center.
        • Pie. Displays a complete circle.
      5. Under Slices, in Border select:
        • Show borders. (Default) These are the thin lines that separate the slices.
        • Don&rsquot show borders. Removes the lines.
      6. Under Number of Slices select:
        • Show all slices to display all data.
        • Or click the default number 10 to enter a new value.
      7. You can also change the position of Legend, Label truncation, and Dashboard Linking in this page.
      8. Click Save.
      • Change Dashboard Themes
      • Change Gridlines on the Y Axis

      How does PIE *kʷ in **wĺ̥kʷos change to PGmc. *f in *wulfaz?

      The word *wĺ̥kʷos is a thematic accented zero-grade noun perhaps derived from the adjective *wl̥kʷós ‘dangerous’ (compare Hittite walkuwa ‘dangerous’, Old Irish olc ‘evil’, Sanskrit [script?] (avṛká) ‘safe’, literally, ‘not wild’, वृकतात् (vṛká-tāt) ‘savagery’).1 Stress shift onto the zero-grade is consistent with nominalized adjectives: compare Sanskrit कृष्ण (kṛ́ṣṇa) ‘black antelope’ from कृष्ण (kṛṣṇá) ‘black’. Alternatively, the word may be a derivative of the verbal root *welh₂- ‘to tear up’.2 In either case, the word's formation closely resembles that of *h₂ŕ̥tḱos (“bear”), another thematic accented zero-grade noun whose referent is an animal subject to cultural taboos.3

      The Latin and Greek reflexes are unexpected (vs. expected Lat **volquus, Gk **álpos l̥ → Lat ol, Gk al). The Latin reflex may be variously a borrowing from Sabine (where PIE */kʷ/ regularly gave /p/), influenced by volpēs ‘fox’, or a taboo deformation meant to offset the fear usually associated with the animal, or any combination of the three. A deformation would explain the metathesis of */w/ and */l/, which also occurred in Greek (*wĺ̥kʷos → *lúkʷos → *lýkos), but does not explain the presence of delabialized /k/ which is regular in Greek only before /u/. In both cases, the expected forms are so close to the word for ‘fox’ (compare Lat volpēs, Gk alōpós, alṓpēx) that avoiding conflation of the two words ‘wolf’ and ‘fox’ may have motivated either alteration or borrowing.

      The Germanic reflex, with /f/ ← */p/ ← */kʷ/, underwent an unusual sound change, but the velar was retained in at least one form, e.g., Old Norse ylgr ‘she-wolf’ (vs. Old English wylf, Middle High German wülpe ← *wulbī) ← *wulgʷī́ ← *wl̥kʷíh₂, which indicates neither taboo deformation nor derivation from some other root took place.

      Armenian and Celtic have replaced the word with Proto-Indo-European *wai-lo (“howler”) due to taboo compare Old Armenian գայլ (gayl), Old Irish fáel.4

      Here is another similar derivation:

      From Middle English, from Old English endleofan from Proto-Germanic *ainalif (“one left”), a compound of *ainaz and *lif-. Compare West Frisian alve, Dutch elf, German elf, Danish elleve.

      c.1200, elleovene, from Old English endleofan, literally "one left" (over ten), from Proto-Germanic *ainlif- (cf. Old Saxon elleban, Old Frisian andlova, Dutch elf, Old High German einlif, German elf, Old Norse ellifu, Gothic ainlif), a compound of *ain "one" (see one) + PIE *leikw- "leave, remain" (cf. Greek leipein "to leave behind" see relinquish).

      Old English twelf, literally "two left" (over ten), from Proto-Germanic *twa-lif-, a compound of the root of two + *lif-, root of the verb leave (see eleven). Cf. Old Saxon twelif, Old Norse tolf, Old Frisian twelef, Middle Dutch twalef, Dutch twaalf, Old High German zwelif, German zwölf, Gothic twalif. Outside Germanic, an analogous formation is Lithuanian dvylika, with second element -lika "left over."

      I searched and found a hypothesis about these changes as following: Wolves, wolps, and lupes

      "*kʷ > *p /R_. Where R = i,l (and likely then also u,r)."

      "So I'm presuming the similar environment in question would be in cases like *-Rkʷ- (*R = )? Then I suppose, PIE *pénkʷe > Germanic *fimf would fit that pattern as well."

      Is the sound change PIE *kʷ to PGmc. *f or PIE *kʷ to PIE *p regular though it's uncommon? And does any other example exist?

      PS: Here is a book about the similar sound change in Modern English.

      You could do it like this instead

      We move the color picking to a single variable choice using a ternary statement and then we only have to write out the change to the CSS of the element once. then we flip the boolean.

      I don't like the name of the boolean variable, it doesn't accurately describe what it is keeping track of, based on the way the code is written it should be named isButtonBlue .

      If the button is blue, turn it red. If the button is not blue, turn it blue.

      After looking at this a little bit longer I was thinking that you could make it one line shorter by making another line longer by moving the ternary statement into the CSS change

      It would be better to use CSS for styling and manipulate a class with JS (using the jQuery library, in this case).

      I recently started working on jQuery. And looking here some code reviews for better understanding. Thus i am not an expert but here is my view.

      The points, i would care about doing this task are:

        1. I will use .on instead of .click because it allows binding multiple events on same element(s). lets say you want to perform task on hover enent then. Simply replace "click" with "click mouseenter" .
        1. Seprate css from jquery. So use class related methods instead of .css . It will be messy and hard to maintain styles using .css .
        1. Avoid annonomus functions global variables(and counters/flags if possible) use names function.

      Now for my solution i created a function changeColor($elm, classes) . It takes two arguments. One is the element whose class you want to change and an array which contain classes it might have. Thus this function can be reused for similar effect on elments and class set.

      Like you can perform same for a input box with ["purple yellow"] classed I placed it out of ready function(it will be available since its called in ready function ) since it make ready function clean and readable.

      If you dont want this effect for all the buttons on page then use class selector or if its only one button then id(fastes approach, no DOM travering) selector.

      Working of changeColor.
      It takes two argument. One is elment itself( $(this)=>$button ) and second is attay of classes( ["red", "green", "black"] ). Get the current class of element(lets say "red") now find the index number of this class in classes and remove it from element. Add just next class from array using index number. If index number is one less then size of array then its last class in array. Reset index to 0.

      Drawbacks of this approach However only downside in this approach is if your button has multiple classes say "some-style red". Then this function will not work out of the box. You have to do some modification according to your use case. But styling can be done on id or the element too. Or you can pass only color and then set using .css.

      Make permanent change in the routing table

      I have a Raspberry PI 2 model B with Raspbian version Jessie and I'm trying to bring the internet from my PC to the Raspberry. I have 2 network interfaces between them, one is over Ethernet and the other one is over Wifi. I have configured the Ethernet ip address in the Raspberry to be static, because I have a small computer network at home all with static IP adresses and I want the raspberry to be part of it. As my internet is very slow (I use a dial up modem) I don't want to share this slow internet through the ethernet interface because I don't want all the computers connected to this network to drain my internet speed. As I only intend to bring the internet to the Raspberry I have created a Wifi hotspot in my PC which dynamically assigns an IP adress to my Raspberry (the hotspot software has some sort of DHCP) and that's how I share my slow internet just with the Raspberry.

      But then my problem begins, by default after I turn it on (or if I disconnect and connect again), the Raspberry doesn't connect to internet. By typing ifconfig I get:

      When I type route -n I get:

      Here you can see how the metric of my static Ethernet connection gateway ( is smaller than the metric of my DHCP Wifi connection gateway ( so my Raspberry tries to get the internet through the wrong interface