Seaborn プロットの透明性
このチュートリアルでは、Python で Seaborn のプロットの透明度を制御する方法について説明します。
プロットの透明度を制御するために、プロット関数内で alpha
引数を使用できます。デフォルトでは、その値は 1 です。このパラメーターの値の範囲は 0 から 1 で、値が 0 に達すると、プロットはより透明になり、見えなくなります。これは、seaborn モジュールのほとんどのプロット関数で直接使用できます。
例えば、
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
df = pd.DataFrame(
{
"Day 1": [7, 1, 5, 6, 3, 10, 5, 8],
"Index": [1, 2, 3, 4, 5, 6, 7, 8],
}
)
sns.lineplot(data=df, y="Day 1", x="Index", alpha=0.4)
alpha
パラメータの値は 1 より大きくなる可能性があることに注意してください。ただし、その値が整数から離れるほど、プロットはより透明になります。同様に、整数に近づくほど、プロットは明るくなります。これを理解するのは少し複雑になる可能性があることを考えると、パラメータを 0 から 1 の間に保つだけです。
上記の例では、seaborn モジュールを使用して折れ線グラフを作成し、alpha
パラメーターを 0.4 に設定することで、折れ線グラフをより透明にしました。
1つのプロットで、alpha
パラメーターを指定できるのは 1 回だけです。ただし、透明度は、さまざまな変数を区別する方法として使用できます。
例えば、
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
df = pd.DataFrame(
{
"Day 1": [7, 1, 5, 6, 3, 10, 5, 8],
"Day 2": [1, 2, 8, 4, 3, 9, 5, 2],
"Index": [1, 2, 3, 4, 5, 6, 7, 8],
}
)
sns.lineplot(data=df, x="Index", y="Day 2", alpha=1)
sns.lineplot(data=df, x="Index", y="Day 1", alpha=0.3)
上記のコードでは、2つの変数を同じグラフにプロットしました。基本的に、一方のプロットはもう一方のプロットの上にプロットされ、両方とも alpha
の値が異なります。一方の変数がもう一方の変数よりも透明になるため、透明度に基づいて 2つの値を区別できます。
alpha
引数は、さまざまな FacetGrid、PairGrid オブジェクトでも使用できます。このようなオブジェクトの場合、map()
関数でもパラメーターを使用できます。
次のコードを参照してください。
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
df = pd.DataFrame(
{
"Day 1": [7, 1, 5, 6, 3, 10, 5, 8],
"Index": [1, 2, 3, 4, 5, 6, 7, 8],
}
)
g = sns.FacetGrid(df)
g.map(sns.lineplot, "Index", "Day 1", alpha=0.4)
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