我已经寻找了一个明确的答案,但还没有找到,我很抱歉,如果这是以前问过。我用的是seaborn 0.6和matplotlib 1.4.3。我想暂时改变绘图的风格,因为我正在一个ipython笔记本上创建许多图形。
具体来说,在本例中,我想在每个绘图的基础上更改字体大小和背景样式。
这将创建我要查找的绘图,但全局定义参数:
import seaborn as sns
import numpy as np
x = np.random.normal(size=100)
sns.set(style="whitegrid", font_scale=1.5)
sns.kdeplot(x, shade=True);
但这失败了:
with sns.set(style="whitegrid", font_scale=1.5):
sns.kdeplot(x, shade=True);
使用:
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
<ipython-input-10-70c5b03f9aa8> in <module>()
----> 1 with sns.set(style="whitegrid", font_scale=1.5):
2 sns.kdeplot(x, shade=True);
AttributeError: __exit__
我也试过:
with sns.axes_style(style="whitegrid", rc={'font.size':10}):
sns.kdeplot(x, shade=True);
这不会失败,但它也不会改变字体的大小。任何帮助都将不胜感激。
这就是我使用的,利用matplotlib提供的上下文管理:
例如:
最好的做法是将seaborn样式和上下文参数组合到一个字典中,然后将其传递给
plt.rc_context
函数:相关问题 更多 >
编程相关推荐