本記事では、下図のような行列散布図を作成します。特に、横軸(X軸)と縦軸(Y軸)をそれぞれリストで指定してプロットします。ここでは、X軸にWeight, Waist, Pulse の3つを指定し、Y軸にChins, Situps, Jumps の3つを指定した図です。
下図は、上記をプロットしたデータセットです。
列名を指定する際には、全ての列名を指定する必要はありません。例えば、下図はY軸に指定したリストの要素が、 Jumps のみの場合の図となります。
■本プログラム
import os
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
file_path = 'linnerud_XYdata.csv'
df = pd.read_csv(file_path)
df
x_name_list = [
'Weight',
'Waist',
'Pulse',
]
y_name_list = [
'Chins',
'Situps',
'Jumps'
]
sns.set(style = 'whitegrid')
sns.set_context('talk')
ax = sns.pairplot(
df,
x_vars = x_name_list,
y_vars = y_name_list,
kind = 'reg',
markers = '.',
diag_kind = None,
height = 3,
aspect = 3/4
)
ax.fig.suptitle(file_path, y = 1.0)
plt.subplots_adjust(left=0.1, right=0.9, bottom=0.3, top=0.95)
file_name_wo_extension, extension = os.path.splitext(file_path)
plt.savefig(f'{file_name_wo_extension}.jpg')
plt.close()
以上
<広告>
リンク
リンク
リンク