通常の matplotlib プロットと同じように、関数 matplotlib.pyplot.subplots を使用して、多くの seaborn プロットをサブプロットにプロットできます。プロットすることができます。 ただし、一部の関数には、ax パラメータがないなどの制限があります
バージョン 0.11 より前では、seaborn.distplot 関数はさまざまな種類のプロットに使用されていました。配布物。 この関数は seaborn 0.11 で非推奨になりました
seaborn.distplot() has been DEPRECATED in seaborn 0.11 and is replaced with the following: displot(), a figure-level function with a similar flexibility over the kind of plot to draw. This is a FacetGrid, and does not have the ax parameter, so it will not work with matplotlib.pyplot.subplots. histplot(), an axes-level function for plotting histograms, including with kernel density smoothing. This does have the ax parameter, so it will work with matplotlib.pyplot.subplots.
ax パラメータを持たない seaborn 関数には、代わりに使用できる対応する軸レベルの関数があります。 。 正しい関数を見つけるには、Figure レベルのプロットに関する seaborn ドキュメントを参照して、適切な Axes レベルのプロット関数を見つけることができます。
軸のない Figure レベルのプロットのリストは次のとおりです。パラメータ:
この例ではこの場合、目的は 2 つの異なるヒストグラムを同じ行にプロットすることです。 displot は Figure レベルの関数であり、ax パラメーターがないため、matplotlib.pyplot.subplots では使用できません。 この場合、使用する正しい関数は histplot です。これは、ax パラメータを持つ axes レベルの関数です。
次に、histplot を使用して 2 つの異なるヒストグラムを同じ行にプロットする例を示します。
<code class="python">import seaborn as sns import matplotlib.pyplot as plt # load data penguins = sns.load_dataset("penguins", cache=False) # select the columns to be plotted cols = ['bill_length_mm', 'bill_depth_mm'] # create the figure and axes fig, axes = plt.subplots(1, 2) axes = axes.ravel() # flattening the array makes indexing easier for col, ax in zip(cols, axes): sns.histplot(data=penguins[col], kde=True, stat='density', ax=ax) fig.tight_layout() plt.show()</code>
これにより、同じ行に 2 つのヒストグラムがプロットされた図が生成されます。
複数のデータフレームがある場合は、それらを組み合わせることができますpandas pd.concat を使用し、次に assign メソッドを使用して、識別用の「ソース」列を作成します。これは、row= またはcol= の指定に使用したり、色相パラメーターとして使用したりできます
<code class="python"># list of dataframe lod = [df1, df2, df3] # create one dataframe with a new 'source' column to use for row, col, or hue df = pd.concat((d.assign(source=f'df{i}') for i, d in enumerate(lod, 1)), ignore_index=True)</code>
。この結合されたデータフレームを使用して、seaborn を使用してさまざまなプロットをプロットします。
詳細については、次のリソースを参照してください。
以上が定義された Matplotlib サブプロット内で Seaborn プロットをプロットするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。