Seaborn.set_context() 方法
Seaborn.set_context() 方法用于设置控制绘图元素缩放的参数。 通过使用它,一般样式不受影响,尽管它确实会影响标签、线条和其他绘图点的大小。 matplotlib 中的 rcParams 系统就是用来实现这一点的。
术语"paper"、"talk"和"poster"是按不同值缩放的 notebook 参数的版本,而"notebook"用作基本上下文。 此外,字体元素可以独立于其他值进行缩放。
语法
以下是 seaborn.set_context() 方法的语法 −
seaborn.set_context(context=None, font_scale=1, rc=None)
参数
下面将讨论 set_context() 方法的参数。
S.No | 参数及说明 |
---|---|
1 | context 将以下内容作为输入 none、dict 或 {paper、notebook、talk、poster} 之一,并确定参数字典或预配置集的名称。 |
2 | rc 以rcdict为值,是一个可选参数,执行参数映射以覆盖预设的seaborn样式字典中的值。 这只会更新被视为样式定义一部分的参数。 |
3 | font_scale 接受一个浮点值作为输入并且是可选参数。 它的单独缩放因子可以独立缩放字体元素的大小。 |
让我们在继续开发绘图之前加载 seaborn 库和数据集。
载入seaborn 库
要加载或导入 seaborn 库,可以使用以下代码行。
Import seaborn as sns
加载数据集
在本文中,我们将使用 seaborn 库中内置的 Tips 数据集。 以下命令用于加载数据集。
tips=sns.load_dataset("tips")
下面提到的命令用于查看数据集中的前 5 行。 这使我们能够了解哪些变量可用于绘制图形。
tips.head()
以下是上面这段代码的输出。
index,total_bill,tip,sex,smoker,day,time,size 0,16.99,1.01,Female,No,Sun,Dinner,2 1,10.34,1.66,Male,No,Sun,Dinner,3 2,21.01,3.5,Male,No,Sun,Dinner,3 3,23.68,3.31,Male,No,Sun,Dinner,2 4,24.59,3.61,Female,No,Sun,Dinner,4
既然我们已经加载了数据,我们将继续了解该方法在以下示例中的工作原理。
示例 1
我们将在设置上下文后绘制图表。 上下文可以有值 paper、notebook、talk 和 poster。 在此示例中,我们将上下文设置为纸张,然后通过将列表传递给条形图的 x、y 参数来生成条形图。
import seaborn as sns import matplotlib.pyplot as plt tips=sns.load_dataset("tips") tips.head() sns.set_context("paper") sns.barplot(x=[0, 1, 2], y=[0.5, 3.6, 9.4]) plt.show()
输出
生成的输出如下,
示例 2
在这个例子中,我们将使用 font_scale 参数。 此参数用于增大或减小图中的字体大小。 在此示例中,1.5 被传递给 font_scale。
import seaborn as sns import matplotlib.pyplot as plt tips=sns.load_dataset("tips") tips.head() sns.set_context("poster", font_scale=1.5) sns.barplot(x=[0, 1, 2], y=[0.5, 3.6, 9.4]) plt.show()
输出
输出如下,
示例 3
在此示例中,我们将使用提示数据集并设置上下文,然后使用上下文为数据集绘制线图。 上下文设置为笔记本和 rc 参数之一,lines.linewidth 设置为 3 以显示如何使用 rc 参数。
然后来自该数据集的提示数据集和列被传递给线图。
import seaborn as sns import matplotlib.pyplot as plt tips=sns.load_dataset("tips") tips.head() sns.set_context("notebook", rc={"lines.linewidth": 3}) sns.lineplot(data=tips,x="tip",y="total_bill") plt.show()
输出
得到的输出如下 −