seaborn.JointGrid#
- class seaborn.JointGrid(data=None, *, x=None, y=None, hue=None, height=6, ratio=5, space=0.2, palette=None, hue_order=None, hue_norm=None, dropna=False, xlim=None, ylim=None, marginal_ticks=False)#
周辺に一変量プロットを伴う二変量プロットを描画するためのグリッド。
多くのプロットは、図レベルのインターフェース
jointplot()
を使用して描画できます。より柔軟性が必要な場合は、このクラスを直接使用します。- __init__(data=None, *, x=None, y=None, hue=None, height=6, ratio=5, space=0.2, palette=None, hue_order=None, hue_norm=None, dropna=False, xlim=None, ylim=None, marginal_ticks=False)#
サブプロットのグリッドを設定し、プロットを容易にするためにデータを内部に保存します。
- パラメータ:
- data
pandas.DataFrame
、numpy.ndarray
、マッピング、またはシーケンス 入力データ構造。名前付き変数に割り当てることができるベクトルを持つ長形式のコレクション、または内部的に形状変更されるワイド形式のデータセットのいずれか。
- x, y
data
のベクトルまたはキー x軸およびy軸上の位置を指定する変数。
- height数値
図の各辺のサイズ(インチ単位)(正方形になります)。
- ratio数値
結合軸の高さと周辺軸の高さの比率。
- space数値
結合軸と周辺軸の間のスペース
- dropnabool
Trueの場合、プロットする前に欠損値を削除します。
- {x, y}lim数値のペア
プロットする前に、軸の制限をこれらの値に設定します。
- marginal_ticksbool
Falseの場合、周辺プロットのカウント/密度軸の目盛りを抑制します。
- hue
data
のベクトルまたはキー プロット要素の色を決定するためにマッピングされるセマンティック変数。注:
FacetGrid
またはPairGrid
とは異なり、JointGrid
で使用するには、軸レベルの関数がhue
をサポートする必要があります。- palette文字列、リスト、辞書、または
matplotlib.colors.Colormap
hue
セマンティックをマッピングするときに使用する色を選択する方法。文字列値はcolor_palette()
に渡されます。リストまたは辞書の値はカテゴリカルマッピングを意味し、カラーマップオブジェクトは数値マッピングを意味します。- hue_order文字列のベクトル
hue
セマンティックのカテゴリカルレベルの処理とプロットの順序を指定します。- hue_normtuple または
matplotlib.colors.Normalize
データ単位での正規化範囲を設定する値のペア、またはデータ単位から[0, 1]の範囲にマッピングするオブジェクトのいずれかです。使用は数値マッピングを意味します。
- data
関連事項
例
コンストラクターを呼び出すと図が初期化されますが、何もプロットされません
penguins = sns.load_dataset("penguins") sns.JointGrid(data=penguins, x="bill_length_mm", y="bill_depth_mm")
最もシンプルなプロットメソッドである
JointGrid.plot()
は、関数のペア(結合軸用と両方の周辺軸用)を受け入れますg = sns.JointGrid(data=penguins, x="bill_length_mm", y="bill_depth_mm") g.plot(sns.scatterplot, sns.histplot)
JointGrid.plot()
関数は追加のキーワード引数も受け入れますが、それらを両方の関数に渡しますg = sns.JointGrid(data=penguins, x="bill_length_mm", y="bill_depth_mm") g.plot(sns.scatterplot, sns.histplot, alpha=.7, edgecolor=".2", linewidth=.5)
各関数に異なるキーワード引数を渡す必要がある場合は、
JointGrid.plot_joint()
とJointGrid.plot_marginals()
を呼び出す必要がありますg = sns.JointGrid(data=penguins, x="bill_length_mm", y="bill_depth_mm") g.plot_joint(sns.scatterplot, s=100, alpha=.5) g.plot_marginals(sns.histplot, kde=True)
データを割り当てずにグリッドを設定することもできます
g = sns.JointGrid()
次に、
ax_joint
、ax_marg_x
、およびax_marg_y
属性(matplotlib.axes.Axes
オブジェクト)にアクセスしてプロットできますg = sns.JointGrid() x, y = penguins["bill_length_mm"], penguins["bill_depth_mm"] sns.scatterplot(x=x, y=y, ec="b", fc="none", s=100, linewidth=1.5, ax=g.ax_joint) sns.histplot(x=x, fill=False, linewidth=2, ax=g.ax_marg_x) sns.kdeplot(y=y, linewidth=2, ax=g.ax_marg_y)
プロットメソッドは、
x
変数とy
変数を受け入れる任意のseaborn関数を使用できますg = sns.JointGrid(data=penguins, x="bill_length_mm", y="bill_depth_mm") g.plot(sns.regplot, sns.boxplot)
関数が
hue
変数を受け入れる場合は、コンストラクターを呼び出すときにhue
を割り当てることで使用できますg = sns.JointGrid(data=penguins, x="bill_length_mm", y="bill_depth_mm", hue="species") g.plot(sns.scatterplot, sns.histplot)
:meth:
JointGrid.refline
を使用して、結合軸または周辺軸(または両方)に水平線または垂直線を追加できますg = sns.JointGrid(data=penguins, x="bill_length_mm", y="bill_depth_mm") g.plot(sns.scatterplot, sns.histplot) g.refline(x=45, y=16)
図は常に正方形になります(matplotlibレイヤーでサイズ変更しない限り)。ただし、全体的なサイズとレイアウトは設定可能です。サイズは
height
パラメーターによって制御されます。結合軸と周辺軸の相対比率はratio
によって制御され、プロット間の間隔はspace
によって制御されますsns.JointGrid(height=4, ratio=2, space=.05)
デフォルトでは、周辺プロットの密度軸上の目盛りはオフになっていますが、これは設定可能です
sns.JointGrid(marginal_ticks=True)
2つのデータ軸の制限(プロット間で共有)は、図を設定するときに定義することもできます
sns.JointGrid(xlim=(-2, 5), ylim=(0, 10))
メソッド
__init__
([data, x, y, hue, height, ratio, ...])サブプロットのグリッドを設定し、プロットを容易にするためにデータを内部に保存します。
apply
(func, *args, **kwargs)グリッドをユーザー指定の関数に渡し、selfを返します。
pipe
(func, *args, **kwargs)グリッドをユーザー指定の関数に渡し、その値を返します。
plot
(joint_func, marginal_func, **kwargs)結合軸と周辺軸の関数を渡してプロットを描画します。
plot_joint
(func, **kwargs)グリッドの結合軸に二変量プロットを描画します。
plot_marginals
(func, **kwargs)各周辺軸に一変量プロットを描画します。
refline
(*[, x, y, joint, marginal, color, ...])結合軸または周辺軸(または両方)に参照線を追加します。
savefig
(*args, **kwargs)プロットの画像を保存します。
set
(**kwargs)各サブプロットAxesに属性を設定します。
set_axis_labels
([xlabel, ylabel])二変量軸に軸ラベルを設定します。
属性
fig
非推奨:
figure
プロパティを優先してください。figure
グリッドの基礎となる
matplotlib.figure.Figure
オブジェクトにアクセスします。