Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to suppress matplotlib warning?

I am getting an warning from matplotlib every time I import pandas:

/usr/local/lib/python2.7/site-packages/matplotlib/__init__.py:872: UserWarning: axes.color_cycle is deprecated and replaced with axes.prop_cycle; please use the latter.


 warnings.warn(self.msg_depr % (key, alt_key))

What is the best way to suppress it? All packages are up-to-date.

Conf: OSX with a brew Python 2.7.10 (default, Jul 13 2015, 12:05:58), and pandas==0.17.0 and matplotlib==1.5.0

like image 529
nuin Avatar asked Nov 18 '15 23:11

nuin


3 Answers

You can suppress all warnings:

import warnings
warnings.filterwarnings("ignore")

import pandas
like image 190
Andre Avatar answered Nov 06 '22 00:11

Andre


Rather than hiding everything, you can also hide specific warnings. For instance if we want to hide only matplotlib warnings:

warnings.filterwarnings( "ignore", module = "matplotlib\..*" )

The filter can be customised down to the exact message and line number of the file in which the warning originates, let's say if it's just one warning that annoys you and not matplotlib as a whole. See https://docs.python.org/3/library/warnings.html for more details.

like image 32
c z Avatar answered Nov 06 '22 00:11

c z


You can either suppress the warning messages as suggested by AndreL or you can resolve this specific issue and stop getting the warning message once and for all. If you want the latter, do the following.

Open your matplotlibrc file and search for axes.color_cycle. If you're getting the warning message it means that your matplotlibrc file should show something like this:

axes.color_cycle : b, g, r, c, m, y, k  # color cycle for plot lines

You should replace that line by this:

axes.prop_cycle : cycler('color', ['b', 'g', 'r', 'c', 'm', 'y', 'k'])

And the warning message should be gone.

like image 9
mairan Avatar answered Nov 06 '22 00:11

mairan