在 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()
然后,如果我运行 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()
这对我来说似乎有点奇怪。我更喜欢第二个绘图配置,但希望在不任意调用 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/