Python Seabornチュートリアル:Seabornとは何ですか?その使用方法は?

seabornとmatplotlibの違いに沿ったPythonSeabornチュートリアル。また、seabornで利用可能なさまざまな機能とカスタマイズについても学びます。

Pythonは、非常に強力なライブラリとフレームワークの宝庫です。その中で、 シーボーン、 支配的です データの視覚化 ライブラリ、プログラマーが完了するためのさらに別の理由を与える 。このPythonSeabornチュートリアルでは、Seabornを使用したデータ視覚化のすべてのコツを学びます。



先に進む前に、この記事のディスカッションのすべてのトピックを見てみましょう。



それでは、まずPythonSeabornの重要性を推論することから始めましょう。

なぜPythonSeabornを使用するのですか?

前述のように、Python Seabornライブラリは、データ視覚化の困難なタスクを容易にするために使用され、 。 Seabornでは、次の機能を使用して統計グラフィックを作成できます。



  • 複数のデータセット間の比較を可能にするデータセットに基づくAPI 変数

  • マルチプロットグリッドをサポートし、複雑な視覚化の構築を容易にします

  • データのサブセット間で比較するために利用可能な単変量および二変量の視覚化



  • さまざまな種類のパターンを明らかにするためのさまざまなカラーパレットの可用性

  • 見積もりとプロット 自動的に

したがって、Matplotlibを既に持っているのになぜSeabornを使用するのか疑問に思っているのであれば、ここにその答えがあります。

Python Seaborn vs Matplotlib:

「Matplotlibが「簡単なことと難しいことを可能にしようとする」場合、seabornは明確に定義された一連の難しいことも簡単にしようとします」– Michael Waskom(Seabornの作成者)。
事実、Matplotlibは優れていますが、Seabornの方が優れています。 Seabornが修正するMatplotlibには基本的に2つの欠点があります。

  1. Matplotlibはパーソナライズできますが、プロットをより魅力的にするために必要な設定を理解するのは困難です。一方、Seabornには、この問題を解決するために多数のカスタマイズされたテーマと高レベルのインターフェイスが付属しています。

  2. で作業するとき パンダ 、Matplotlibは、DataFrameの処理に関してはうまく機能しませんが、Seaborn関数は実際にはDataFrameで機能します。

Seabornをインストールするにはどうすればいいですか?

htmlとxmlの違いは何ですか

Python Seabornライブラリをインストールするには、使用するプラットフォームに基づいて次のコマンドを使用できます。

pip install seaborn

または

conda installseaborn

これをインストールしたら、seabornが依存しているパッケージとライブラリをインストールしてください。

Python Seaborn依存関係のインストール:

seabornの必須の依存関係は次のとおりです。

推奨される依存関係も1つあります。それは次のとおりです。

  • 状態モデル

これらのライブラリをインストールするには、Seabornについて前に示したのと同じコマンドをそれぞれの名前で使用できます。インストールすると、簡単にインポートできます。 Seabornを使用すると、から任意のデータセットをロードできます を使用して load_dataset() 関数。次のようにget_dataset_names()関数を使用して、使用可能なすべてのデータセットを表示することもできます。

例:

seabornをsnssns.get_dataset_names()としてインポートします

これにより、使用可能なすべてのデータセットのリストが返されます。
Seabornを操作するための環境を設定したので、次に進んで、でのプロット関数の使用方法を見てみましょう。 。

Seabornプロット関数

統計的関係の視覚化:

データセットの変数間の関係を理解し​​、これらの関係が他の変数にどのように依存するかを理解するプロセスは、統計分析として知られています。これに必要な関数を詳しく見てみましょう。

relplot():

これは、統計的関係を視覚化するために他の2つの軸関数を使用する図レベルの関数です。

  • 散布図()
  • lineplot()

これらの関数は、relplot()の「kind」パラメーターを使用して指定できます。このパラメーターが指定されている場合、デフォルトのパラメーターであるscatterplot()が使用されます。コードの記述を開始する前に、次のように必要なライブラリをインポートしてください。

import numpy as np import pandas as pd import matplotlib.pyplot as plt import seaborn as sns sns.set(style = 'darkgrid')

スタイル属性もカスタマイズ可能であり、ダークグリッド、ティックなど、プロットの美学のセクションで後述する任意の値をとることができることに注意してください。小さな例を見てみましょう。

例:

f = sns.load_dataset( 'flights')sns.relplot(x = 'passengers'、y = 'month'、data = f)

出力:

フライト1-PythonSeabornチュートリアル-Edureka

ご覧のとおり、ポイントは2次元でプロットされています。ただし、「色相」セマンティクスを使用して別のディメンションを追加できます。同じ例を見てみましょう。

例:

f = sns.load_dataset( 'flights')sns.relplot(x = 'passengers'、y = 'month'、hue = 'year'、data = f)

次の出力が表示されます。

出力:

ただし、色、スタイル、サイズなど、試すことができるカスタマイズは他にもたくさんあります。次の例で、色を変更する方法を示します。

例:

sns.set(style = 'darkgrid')f = sns.load_dataset( 'flights')sns.relplot(x = 'passengers'、y = 'month'、hue = 'year'、palette = 'ch:r =- .5、l = .75 '、data = f)

出力:

lineplot():

この関数を使用すると、データに連続線を引くことができます。この関数は、「kind」パラメータを次のように変更することで使用できます。

例:

a = pd.DataFrame({'Day':[1,2,3,4,5,6,7]、 'Grocery':[30,80,45,23,51,46,76]、 '服' :[13,40,34,23,54,67,98]、 '道具':[12,32,27,56,87,54,34]}、index = [1,2,3,4,5 、6,7])g = sns.relplot(x = 'Day'、y = 'Clothes'、kind = 'line'、data = a)g.fig.autofmt_xdate()

出力:

ラインプロットのデフォルトは、xの関数としてのyです。ただし、必要に応じて変更することができます。さらに試すことができるオプションは他にもたくさんあります。

次に、カテゴリデータをプロットする方法を見てみましょう。

カテゴリデータを使用したプロット:

このアプローチは、メイン変数がさらに個別のグループ(カテゴリ)に分割されたときに明らかになります。これは、catplot()関数を使用して実現できます。

catplot():

これは、relplot()のような図レベルの関数です。これは、軸レベル関数の3つのファミリによって特徴付けることができます。

  1. 散布図–これらにはstripplot()、swarmplot()が含まれます

    javaがメソッドから抜け出す
  2. 分布プロット– boxplot()、violinplot()、boxenplot()です。

  3. Estimateplots –つまり、pointplot()、barplot()、countplot()

これを示すために、いくつかの例を見てみましょう。

例:

インポートseabornas sns import matplotlib.pyplot as plt sns.set(style = 'ticks'、color_codes = True)a = sns.load_dataset( 'tips')sns.catplot(x = 'day'、y = 'total_bill'、 data = a)

出力:

ご覧のとおり、上記の例では、「kind」パラメータを設定していません。したがって、デフォルトの散布図としてグラフが返されます。必要に応じて、任意の軸レベル関数を指定してグラフを変更できます。これの例も見てみましょう:

例:

インポートseabornas sns import matplotlib.pyplot as plt sns.set(style = 'ticks'、color_codes = True)a = sns.load_dataset( 'tips')sns.catplot(x = 'day'、y = 'total_bill'、 kind = 'violin'、data = a)

出力:

上記の出力は、tipsデータセットのバイオリン図を示しています。次に、データセットの分布を視覚化する方法を見つけてみましょう。

データセットの分布の視覚化:

これは基本的に、単変量または二変量であるというコンテキストでデータセットを理解することを扱います。これを始める前に、以下をインポートしてください。

import numpy as np import pandas as pd import seaborn as sns import matplotlib.pyplot as plt from scipy import stats sns.set(color_codes = True)

これが完了すると、単変量および二変量分布のプロットを続行できます。

単変量分布のプロット:

それらをプロットするには、次のようにdistplot()関数を使用できます。

例:

a = np.random.normal(loc = 5、size = 100、scale = 2)sns.distplot(a)

出力:

上記の例でわかるように、distplotを使用してnormal()関数によって値が生成される変数aのグラフをプロットしました。

二変量分布のプロット:

これは、2つのランダムな独立変数があり、何らかのイベントが発生する可能性がある場合に発生します。これらのタイプのグラフをプロットするのに最適な関数はjointplot()です。ここで、jointplot()を使用して2変量グラフをプロットしてみましょう。

例:

x = pd.DataFrame({'Day':[1,2,3,4,5,6,7]、 'Grocery':[30,80,45,23,51,46,76]、 '服' :[13,40,34,23,54,67,98]、 '道具':[12,32,27,56,87,54,34]}、index = [1,2,3,4,5 、6,7])y = pd.DataFrame({'Day':[8,9,10,11,12,13,14]、 'Grocery':[30,80,45,23,51,46、 76]、 '服':[13,40,34,23,54,67,98]、 '道具':[12,32,27,56,87,54,34]}、index = [8,9 、10,11,12,13,14])平均、cov = [0、1]、[(1、.5)、(。5、1)]データ= np.random.multivariate_normal(mean、cov、200 )with sns.axes_style( 'white'):sns.jointplot(x = x、y = y、kind = 'kde'、color = 'b')

出力:

Python Seabornのさまざまな関数を理解したので、次に構造化マルチプロットグリッドの構築に移りましょう。

マルチプロットグリッド:

Python Seabornを使用すると、複数のグリッドを並べてプロットできます。これらは基本的に、それらの間の比較を支援するために同じスケールと軸を使用してプロットされるプロットまたはグラフです。これにより、プログラマーはプロットをすばやく区別し、大量の情報を取得できます。

これらのグラフをプロットするためのfacetgrid()関数の次の例を検討してください。

例:

sns.set(style = 'darkgrid')a = sns.load_dataset( 'iris')b = sns.FacetGrid(a、col = 'species')b.map(plt.hist、 'sepal_length')

出力:

上記の出力は、昼食と夕食の間に与えられたヒントの比較を明確に示しています。比較する変数のペアがある場合は、PairGrid関数を使用してプロットすることもできます。次の例を考えてみましょう。

例:

sns.set(style = 'ticks')a = sns.load_dataset( 'flights')b = sns.PairGrid(a)b.map(plt.scatter)

出力:

ご覧のとおり、上記の出力は、さまざまな方法で年と乗客数を明確に比較しています。

Seabornでは、美学に関するカスタマイズも可能です。これについては、さらに詳しく説明します。

プロット-美学:

Python Seabornチュートリアルのこのセグメントでは、プロットをより魅力的で楽しいものにすることを扱います。

Python Seabornフィギュア-美学:

私が議論する最初の関数はset()です。以前、この関数の「style」パラメータを使用していました。このパラメータは基本的に海のテーマを扱います。現在、ダークグリッド、ティック、ホワイトグリッド、ホワイト、ダークの5つが利用可能です。

白のテーマを示す次の例について考えてみます。

例:

javascriptで配列の長さを見つける方法
インポートseabornas sns import matplotlib.pyplot as plt sns.set(style = 'white'、color_codes = True)a = sns.load_dataset( 'tips')sns.boxplot(x = 'day'、y = 'total_bill'、 data = a)

出力:

上記の出力では、テーマが白に変更されていることがわかります。他のテーマを使用して、それらをさらに探索することもできます。前の出力で気付いた場合、グラフの周りに軸があります。ただし、これはdespine()関数を使用してカスタマイズすることもできます。以下の例を見てください。

例:

インポートseabornas sns import matplotlib.pyplot as plt sns.set(style = 'white'、color_codes = True)a = sns.load_dataset( 'tips')sns.boxplot(x = 'day'、y = 'total_bill'、 data = a)sns.despine(offset = 10、trim = True)

出力:



前の2つの出力の違いに注意してください。ただし、自分で調べることができるオプションは他にもたくさんあります。

Python Seabornカラーパレット:

色は基本的に、他のどの特徴よりも人間の目に近づく特徴です。 Seabornを使用すると、color_palette()、hls_palette()、husl_palette()などのさまざまな関数を使用して色を操作できます。seaborn内に現在存在する色を確認してください。

例:

import numpy as np import seaborn as sns import matplotlib.pyplot as plt sns.set()presentcolors = sns.color_palette()sns.palplot(presentcolors)

出力:

上の画像は、海の中に存在する色を示しています。私はpalplot()関数を使用してそれを行いました。より深いバリエーションについては、hls_palette()、husl_palette()などを使用できます。

これで、PythonSeabornチュートリアルは終了です。あなたがすべてをはっきりと理解したことを願っています。 できるだけ練習してください

質問がありますか?この「PythonSeabornTutorial」ブログのコメントセクションでそのことを伝えてください。できるだけ早くご連絡いたします。

Pythonとそのさまざまなアプリケーションに関する詳細な知識を得るには、ライブに登録できます。 24時間年中無休のサポートと生涯アクセス。