pandas.scatter_matrix 函数开始绘制模糊和损坏的图
Posted
技术标签:
【中文标题】pandas.scatter_matrix 函数开始绘制模糊和损坏的图【英文标题】:pandas.scatter_matrix function started to draw fuzzy and corrupted plot 【发布时间】:2017-05-26 16:12:57 【问题描述】:pandas.scatter_matrix 的功能停止在 Jupyter Notebook 中正常工作。
它一直在画这个情节:
现在它以这种方式显示:
我不知道是什么影响了这个。
可能是什么原因?
更新
看起来在以前的单元格中使用 seaborn heatmap 会损坏功能。
如何从 seaborn.heatmap 中恢复?
更新 2
matplotlib.style.use('classic')
没有完全恢复
更新 3
以下命令
plt.rcParams.update(plt.rcParamsDefault)
也只是部分恢复。
【问题讨论】:
这通常发生在import seaborn
命令之后,但是matplotlib.style.use('ggplot')
给你的效果相同或非常相似,所以尝试使用matplotlib.style.use(...)
【参考方案1】:
更新:
如this great answer中所述:
%matplotlib inline
使用自己的rcParams
。你可以从 来源,但可以说更简单的方法可能只是保存rcParams
作为inline_rc
在%matplotlib inline
之后的单元格魔法 这个例子,以后再用。
saved_plt_params = plt.rcParams # call it before `import seaborn` !
import seaborn
...
plt.rcParams = saved_plt_params
旧答案:
这应该“修复”样式:
matplotlib.style.use('classic')
注意:您可能想了解matplotlib styles
演示:
In [4]: s = pd.Series(np.random.randn(100)).add(.1).cumsum()
In [5]: %matplotlib
Using matplotlib backend: Qt5Agg
In [6]: s.plot()
Out[6]: <matplotlib.axes._subplots.AxesSubplot at 0xbe16d68>
在我们执行import seaborn
之后:
In [7]: import seaborn
In [8]: s.plot()
Out[8]: <matplotlib.axes._subplots.AxesSubplot at 0xf4782e8>
让我们“修复”它:
In [10]: plt.style.use('classic')
In [11]: s.plot()
Out[11]: <matplotlib.axes._subplots.AxesSubplot at 0xf6e3cc0>
【讨论】:
你确定是风格吗?情节看起来不仅风格不同,而且损坏了:网格线是零散的并且不统一。无论如何,感谢您的帮助,但您的命令无法恢复模式 100% @Dims,很难看出这些图上的差异——它们是什么? 第一个具有“线框”样式,第二个(“损坏”)具有纯色背景和脏网格线,第三个(“部分恢复”)具有灰色边距。 @Dims,抱歉,这超出了我的 matplotlib 知识范围...我在您的问题中添加了“matplotlib”标签 - 这可能会吸引一些 matplotlib 专家 @Dims,你看到this answer的脚注了吗?以上是关于pandas.scatter_matrix 函数开始绘制模糊和损坏的图的主要内容,如果未能解决你的问题,请参考以下文章
pandas.scatter_matrix 返回错误:rowNum 属性在 Matplotlib 3.2 中已弃用,将在两个次要版本后删除
如何修复 Pandas Scatter_matrix 中过长的轴标签?