pandas 如何抑制 matplotlib 警告?
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/33792478/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
How to suppress matplotlib warning?
提问by nuin
I am getting an warning from matplotlib
every time I import pandas
:
matplotlib
每次我都会收到警告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
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
回答by AndreL
You can suppress all warnings:
您可以禁止所有警告:
import warnings
warnings.filterwarnings("ignore")
import pandas
回答by mairan
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.
您可以按照 AndreL 的建议取消警告消息,也可以解决此特定问题并一劳永逸地停止接收警告消息。如果您想要后者,请执行以下操作。
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:
打开您的matplotlibrc
文件并搜索axes.color_cycle
. 如果您收到警告消息,则意味着您的matplotlibrc
文件应显示如下内容:
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.
警告信息应该消失了。
回答by Steffi Keran Rani J
You can suppress the warning UserWarning: axes.color_cycle is deprecated and replaced with axes.prop_cycle; please use the latter.
by using prop_cycleat the appropriate place.
您可以UserWarning: axes.color_cycle is deprecated and replaced with axes.prop_cycle; please use the latter.
通过在适当的位置使用prop_cycle来抑制警告。
For example, in the place you had used color_cycle
:
例如,在您使用过的地方color_cycle
:
matplotlib.rcParams['axes.color_cycle'] = ['r', 'k', 'c']
Replace it with the following:
将其替换为以下内容:
matplotlib.rcParams['axes.prop_cycle'] = mpl.cycler(color=["r", "k", "c"])
For a greater glimpse, here is an example:
为了更深入地了解,这里有一个例子:
import matplotlib.pyplot as plt
import matplotlib as mpl
import numpy as np
mpl.rcParams['axes.prop_cycle'] = mpl.cycler(color=["r", "k", "c"])
x = np.linspace(0, 20, 100)
fig, axes = plt.subplots(nrows=2)
for i in range(10):
axes[0].plot(x, i * (x - 10)**2)
for i in range(10):
axes[1].plot(x, i * np.cos(x))
plt.show()
回答by Tes3awy
Downgrade to matplotlib 1.4.3the previous stable version.
降级到matplotlib 1.4.3之前的稳定版本。