【问题标题】:Matplotlib Style Not Being Applied未应用 Matplotlib 样式
【发布时间】:2017-03-20 23:34:40
【问题描述】:

我注意到这里报告的一个问题:Matplotlib style not working in pandas bar plot

但是用户有 Matplotlib 1.5。我的系统配置如下:
Python - 3.6.0
熊猫 - 0.19.2
Matplotlib - 2.0.0
Seaborn - 0.7.1
Jupyter - 4.4.1

Matplotlib 上的许多可用样式都不起作用。例如,

plt.style.use('seaborn-paper')
plt.rcParams["figure.figsize"] = (20,7) 
df[["CHI"]].plot(kind="bar")

结果: 显然,seaborn-paper 样式尚未应用。这是一个错误,还是我做错了什么?

我使用的数据很简单,只有一列。

|        | CHI |
|--------|-----|
| Red    | 4   |
| Blue   | 5   |
| Yellow | 8   |
| Green  | 7   |
| White  | 15  |

编辑:这些是我导入的库。

import pandas as pd
import numpy as np
%matplotlib inline
import matplotlib.pyplot as plt
import seaborn as sns

添加视频: https://youtu.be/M5sAsKf0UUg

【问题讨论】:

  • 你进口了seaborn吗?它有自己的set_style 函数。
  • 是的,我也进口了 seaborn。
  • 你怎么知道没有应用seaborn-paper样式?
  • 我之前用过(大约3天前,在朋友的系统上),结果是黑白主题,没有任何其他颜色。

标签: python pandas matplotlib seaborn


【解决方案1】:

您可能想看看Style Sheet reference

从那里可以看出seaborn-paper 不是灰度

您可能想改用grayscale


一旦设置了样式表,就不能简单地覆盖它,因为每个样式表可能应用了不同的非重叠设置。

在笔记本中使用新样式表的过程是

  1. 首先将所有样式重置为默认设置

    plt.rcParams.update(plt.rcParamsDefault)
    
  2. 然后请求内联后端

    %matplotlib inline
    
  3. 最后应用新的样式表

    plt.style.use('seaborn-paper')
    

这是一个完整的例子:

【讨论】:

  • 谢谢 - 看来我认为“seaborn-paper”是黑白的,因为这是我运行它时得到的。在我上面发布的视频中复制了它。
  • 那么这个问题解决了吗,还是还有一些悬而未决的问题?
  • 它是开放的,如视频所示。在应用seaborn-paper 时,主题仍然是grayscale
猜你喜欢
  • 1970-01-01
  • 2017-04-22
  • 2018-02-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-11
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多