python - Seaborn sns.set() 改变绘图背景颜色

标签 python seaborn

在 seaborn 中使用 sns.set() 似乎改变了 情节。

import matplotlib
import matplotlib.pyplot as plt
import seaborn as sns
import pandas as pd


df = pd.DataFrame({"type":["A", "A", "A", "A", "B", "B", "B", "B"],
                   "value":[11, 14, 13, 16, 9, 8, 6, 10],
                  "date":["t1", "t2", "t3", "t4", "t1", "t2", "t3", "t4"]})

grid = sns.FacetGrid(df, size=12.5, hue="type", aspect=2)
grid.map(plt.plot, "date", "value")
plt.show()

seaborn1

然后,如果我运行 sns.set(font_scale=2)(或只是 sns.set()),重复 我得到同样的情节

grid = sns.FacetGrid(df, size=12.5, hue="type", aspect=2)
grid.map(plt.plot, "date", "value")
plt.show()

seaborn2

这对我来说似乎有点奇怪。我更喜欢第二个绘图配置,但希望在不任意调用 sns.set() 的情况下获得它,除非这是推荐的方法。

相关版本信息

print("matplotlib version: %s" % matplotlib.__version__)
print("seaborn version: %s" % sns.__version__)

matplotlib version: 2.1.0
seaborn version: 0.8.0

最佳答案

查看文档,好像sns.set()called on import在版本 < 0.8 中。

不带任何参数调用 sns.set 会改变您的绘图的原因是它有一些默认参数。查看文档:

seaborn.set(context='notebook', style='darkgrid', palette='deep', font='sans-serif', font_scale=1, color_codes=False, rc=None)

因此,使用 sns.set(font_scale=2) 将更改字体比例,但也会将其他所有内容更改为 sns.set 的默认参数

关于python - Seaborn sns.set() 改变绘图背景颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48911572/

相关文章:

使用导入模块进行 python 测试

python - 如何将离散值映射到 seaborn 中的热图?

python - 树状图按组着色

python - 将 dataframe-variable-name 作为 seaborn 图表的标题

python - 来自 scikit-garden 的分位数随机森林在做出预测时非常缓慢

python - 如何提高这种numpy迭代的效率?

python - 在 Python 中使用多个 %s 格式化输出名称

python - 使 Seaborn 热图之间的单元格大小相同

python - Pandas 子图布局在这种情况下不起作用

python - 掷骰子直方图没有给出预期的输出?