Seaborn Lineplot 线图
Manav Narula
2022年6月3日
Seaborn 是一种高效的 Python 可视化工具,可用于创建令人惊叹的绘图。它使用并基于 matplotlib 模块。
线图是该模块最基本的图之一。它通常用于跟踪与时间相关的事物。它还可以在一个轴上进行连续观察,在另一个轴上进行分类值。
在本教程中,我们将学习如何使用 Python 中的 seaborn 模块创建线图。
我们将使用 seaborn.lineplot()
函数来创建线图。下面的代码展示了如何使用这个函数并创建一个简单的线图。
import seaborn as sns
import pandas as pd
import matplotlib.pyplot as plt
df = pd.DataFrame(
{"Price 1": [7, 1, 5, 6, 3, 10, 5, 8], "Day": [1, 2, 3, 4, 5, 6, 7, 8]}
)
s1 = sns.lineplot(x="Day", y="Price 1", data=df, color="red")
我们可以使用不同的参数来自定义绘图。例如,color
参数可以更改图中线条的颜色。
当我们需要对变量进行分组并显示变量的变化时,大量使用 style
和 hue
。当我们想在单个图上绘制分类值并允许我们在单个图上绘制多条线时,这可能很有用。
例如,
import seaborn as sns
import pandas as pd
import matplotlib.pyplot as plt
df = pd.DataFrame(
{
"Price": [7, 1, 5, 6, 3, 10, 5, 8],
"Product": ["C1", "C2", "C1", "C2", "C1", "C2", "C1", "C2"],
"Day": [1, 1, 2, 2, 3, 3, 4, 4],
}
)
s = sns.lineplot(x="Day", y="Price", data=df, hue="Product")
我们还可以在彼此之上有多个线图。这种方法还允许我们在同一个图上绘制多个观察值,而不管类别如何。
请参阅下面的代码。
import seaborn as sns
import pandas as pd
import matplotlib.pyplot as plt
df = pd.DataFrame(
{
"Price 1": [7, 1, 5, 6, 3, 10, 5, 8],
"Price 2": [1, 2, 8, 4, 3, 9, 5, 2],
"Day": [1, 2, 3, 4, 5, 6, 7, 8],
}
)
s1 = sns.lineplot(x="Day", y="Price 1", data=df, color="red")
s2 = sns.lineplot(x="Day", y="Price 2", data=df, color="blue")
plt.legend(labels=["Price1", "Price2"])
当我们使用多条线时,最好在图中添加一个图例,这有助于区分两条线。上面代码中的 matplotlib.pyplot.legend()
函数用于显式添加一个图例,我们也可以在其中指定我们的标签。
作者: Manav Narula
Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.
LinkedIn