Seaborn折线图的数据可视化
大家好!在这篇文章中,我们将继续学习Seaborn,并了解Seaborn的线图绘制。最近我们已经介绍了Seaborn热力图,如果你对热力图有兴趣,可以去看看。
一个折线图是什么?
用Seaborn作为库来进行数据可视化,从建立在数据集上的模型中预测结果并分析数据的变化。
Seaborn的线图以连续和分类值的关系为特点,以连续数据点的格式展示。
在本文中,我们将使用以下数据集来操作数据并形成折线图。请在继续之前查看下面的数据集快照。
在下面的数据集中,数据变量’cyl’,’vs’,’am’,’gear’和’carb’是分类变量,因为所有的数据值都属于某个特定类别或一定范围的值。
在剩下的数据列中,属于整数/连续变量,因为它们携带着离散的整数值。
输入的数据集:
绘制你的第一个Seaborn折线图
为了开始使用折线图,我们需要通过以下命令将Seaborn库安装和导入到Python环境中。
语法:
pip install seaborn
当你完成安装后,将库导入到当前的工作环境并使用函数。
句法:
import seaborn
在整个 Seaborn 系列中,我们将使用 Matplotlib 库来绘制数据并以适当的方式展示出来。
使用Seaborn创建单个线图。
我们可以提供离散值或使用数据集来创建Seaborn线图。
语法:
seaborn.lineplot(x, y, data)
- x: Data variable for the x-axis
- y: The data variable for the y-axis
- data: The object pointing to the entire data set or data values
例1:使用随机数据创建Seaborn折线图。
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
Year = [2012, 2014, 2016, 2020, 2021, 2022, 2018]
Profit = [80, 75.8, 74, 65, 99.5, 19, 33.6]
data_plot = pd.DataFrame({"Year":Year, "Profit":Profit})
sns.lineplot(x = "Year", y = "Profit", data=data_plot)
plt.show()
在下面的折线图中,我们可以看到两个数据变量——“年份”和“利润”之间的线性关系。
结果:
例子2:使用数据集创建一条线图,展示数据列之间的关系。
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
data = pd.read_csv("C:/mtcars.csv")
info = data.iloc[1:20,:5]
sns.lineplot(x = "drat", y = "mpg",data=info)
sns.set(style='dark',)
plt.show()
输入数据集:
结果:
多个Seaborn折线图
我们可以在同一空间或图表中创建多条线来可视化数据。我们可以使用相同的或多个数据列/变量来同时描述它们之间的关系。
使用色相参数为多个数据点创建颜色色调
参数hue可以用来对数据集的不同变量分组,并且可以帮助描绘x轴和y轴数据列之间与传递给参数的列之间的关系。
句法:
seaborn.lineplot(x,y,data,hue)
请帮我翻译以下句子为中文:
“Can I have a glass of water, please?”
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
data = pd.read_csv("C:/mtcars.csv")
info = data.iloc[1:20,:5]
sns.lineplot(x = "drat", y = "mpg", data=info, hue="cyl")
plt.show()
如下图所示,以不同的颜色方案表示了‘drat’、‘mpg’和‘cyl’之间的关系。
输出:
使用样式参数来绘制不同类型的线条。
我们可以将style参数设置为我们想要在x轴和y轴上显示的值,并且可以指定不同的线条结构:虚线、点线(标记)等。
句法:
seaborn.lineplot(x, y, data, style)
例子2:
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
data = pd.read_csv("C:/mtcars.csv")
info = data.iloc[1:20,:5]
sns.lineplot(x = "drat", y = "mpg", data=info, hue="cyl", style="cyl")
plt.show()
如图所示,通过不同的线条结构,清晰地展示了散点图中“cyl”数值与“mpg”和“drat”的关系,其中包括实线、虚线和标记等不同的线条形式。
输出:
使用Seaborn中的大小参数绘制多个折线图。
我们甚至可以使用seaborn.lineplot()函数的size参数来表示多个数据变量之间的关系,并使用不同大小的线来绘制。因此,它可以作为一个分组变量,根据数据的大小来选择不同的线条粗细。
句法:
seaborn.lineplot(x, y, data, size)
例子3:
The student asked the teacher for help with his assignment.
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
data = pd.read_csv("C:/mtcars.csv")
info = data.iloc[1:20,]
sns.lineplot(x = "drat", y = "mpg", data=info, hue="gear",style="gear",size="gear")
plt.show()
输入数据集:
输出:
使用不同的颜色调色板来配合线状图
Seaborn的色图和调色板定义了可视化模型的颜色范围。参数“调色板”以及“色调”可以用于确定数据变量的颜色编码方案。
查看更多调色板,请参考以下链接:调色板
语法:
seaborn.lineplot(x,y,data,hue,palette)
例如:
Original: “I am going to the store to buy some groceries.”
Paraphrased: “我打算去商店购买一些杂货。”
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
data = pd.read_csv("C:/mtcars.csv")
info = data.iloc[1:20,]
sns.lineplot(x = "drat", y = "mpg", data=info, hue="gear", palette = "Set1")
plt.show()
输出:
给线性图添加误差线。
可以使用线图来定义置信水平/区间,通过 err_style 参数来描绘误差率。
语法:
Only one option is needed:
seaborn.lineplot(x,y,data,err_style="bars")
For example, I ordered a pizza last night and it arrived within 20 minutes.
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
data = pd.read_csv("C:/mtcars.csv")
info = data.iloc[1:20,]
sns.lineplot(x = "cyl", y = "mpg",data=info, err_style="bars")
plt.show()
产出:
使用seaborn.set()函数来设置不同的样式
Python seaborn.set() 函数可用于以不同的背景样式显示图表。
语法:
seaborn.set(style)
Please turn off the lights before leaving.
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
data = pd.read_csv("C:/mtcars.csv")
info = data.iloc[1:20,]
sns.lineplot(x = "cyl", y = "mpg",data=info,hue="gear")
sns.set(style='dark',)
plt.show()
输出:产量 wǔ
結論是……
因此,在本文中,我们已经理解了线图以及与之相关的变化。
我强烈建议读者们通读Python Matplotlib教程,以更好地理解折线图的使用方法。
参考文献
- Seaborn Line Plot – Official Documentation