あなたが知っておくべきトップPythonデータ視覚化ライブラリ

公開: 2020-03-20

Pythonはデータを使って多くのことを行うことができます。 そして、その多くの機能の1つは視覚化です。 この目的で使用できる複数のライブラリがあります。 この記事では、その著名なライブラリのいくつかと、それらを介してプロットできるさまざまなグラフを見ていきます。

目次

Pythonデータの視覚化

この記事では複数の例を共有しています。データセットを使用してそれらを試してみてください。 始めましょう:

Pythonデータ視覚化ライブラリ

Pythonには、美しいグラフを作成するための多くのライブラリがあります。 それらはすべて、パフォーマンスと機能を強化するさまざまな機能を備えています。 そして、それらはすべてのスキルレベルで利用できます。 これは、初心者でも上級プログラマーでも、Pythonでデータの視覚化を実行できることを意味します。 以下は、いくつかの著名なライブラリです。

  • シーボーン
  • Matplotlib
  • パンダ

データサイエンス用のPythonライブラリは他にもたくさんありますが、当面は著名なものに焦点を当ててきました。 次に、これらのさまざまなライブラリについて説明し、それらとPythonを使用してグラフをプロットする方法を理解します。 始めましょう。

Matplotlib

グラフをプロットするための最も人気のあるPythonライブラリはMatplotlibです。 それは多くの経験を必要とせず、初心者にとっては完璧です。 このライブラリを介してデータの視覚化の学習を開始し、さまざまなグラフと視覚化を習得できます。 それはあなたに多くの自由を与えます、しかしあなたはまたたくさんのコードを書かなければならないでしょう。

人々は、棒グラフやヒストグラムなどの単純な視覚化にMatplotlibを使用します。

読む:Pythonのデータフレーム

折れ線グラフ

折れ線グラフを作成するには、「plot」メソッドを使用する必要があります。 列をループすることにより、グラフに複数の列を作成できます。 この目的には、次のコードを使用してください。

#プロットする列を取得する

columns = iris.columns.drop(['class'])

#xデータを作成

x_data = range(0、iris.shape [0])

#図と軸を作成する

イチジク、ax = plt.subplots()

#各列をプロット

列の列の場合:

ax.plot(x_data、iris [column]、label = column)

#タイトルと凡例を設定

ax.set_title('Iris Dataset')

ax.legend()

散布図

'scatter'メソッドを使用して散布図を作成できます。 プロットラベルとタイトルを付けるには、「plt.subplots」を使用して軸と図を作成する必要があります。

次のコードを使用します。

#図と軸を作成する

イチジク、ax = plt.subplots()

#sepal_lengthをsepal_widthに対して分散させる

ax.scatter(iris ['sepal_length']、iris ['sepal_width'])

#タイトルとラベルを設定する

ax.set_title('Iris Dataset')

ax.set_xlabel('sepal_length')

ax.set_ylabel('sepal_width')

クラスに応じてデータポイントに色を追加できます。 この目的のために、クラスから色にマップする辞書を作成する必要があります。 forループも使用して各ポイントを分散します。

#カラー辞書を作成する

色={'Iris-setosa':'r'、'Iris-versicolor':'g'、'Iris-virginica':'b'}

#図と軸を作成する

イチジク、ax = plt.subplots()

#各データポイントをプロット

for i in range(len(iris ['sepal_length'])):

ax.scatter(iris ['sepal_length'] [i]、iris ['sepal_width'] [i]、color = songs [iris ['class'] [i]])

#タイトルとラベルを設定する

ax.set_title('Iris Dataset')

ax.set_xlabel('sepal_length')

ax.set_ylabel('sepal_width')

ヒストグラム

'hist'メソッドを使用して、Matplotlibでヒストグラムを作成できます。 カテゴリデータを指定すると、すべてのクラスが発生する頻度を計算できます。 Matplotlibでヒストグラムをプロットするために使用する必要のあるコードは次のとおりです。

#図と軸を作成する

イチジク、ax = plt.subplots()

#ヒストグラムをプロット

ax.hist(wine_reviews ['points'])

#タイトルとラベルを設定

ax.set_title('ワインレビュースコア')

ax.set_xlabel('Points')

ax.set_ylabel('Frequency')

棒グラフ

Matplotlibには、さまざまなグラフをプロットするための簡単な方法があります。 たとえば、この場合、Matplotlibで棒グラフを作成するには、「bar」を使用する必要があります。 カテゴリの頻度を自動的に計算することはできないため、この問題を解決するには「value_counts」関数を使用する必要があります。 データに多くの種類がない場合は、棒グラフが視覚化に最適です。

#図と軸を作成する

イチジク、ax = plt.subplots()

#各クラスの発生をカウントします

data = wine_reviews ['points']。value_counts()

#xおよびyデータを取得

ポイント=data.index

頻度=data.values

#棒グラフを作成する

ax.bar(ポイント、頻度)

#タイトルとラベルを設定

ax.set_title('ワインレビュースコア')

ax.set_xlabel('Points')

ax.set_ylabel('Frequency')

パンダ

Pandasは、データの分析と操作に人気のあるPythonライブラリです。 オープンソースのライブラリなので、無料でご利用いただけます。 2008年に市場に参入し、それ以来、データ構造化で最も人気のあるライブラリの1つになりました。

パンダのデータフレームを使用すると、データのプロットを簡単に作成できます。 そのAPIはMatplotlibよりも高度です。 これは、MatplotlibよりもPandasの方が少ないコードでグラフを作成できることを意味します。

棒グラフ

パンダでは、棒グラフをプロットするために「plot.bar()」メソッドを使用する必要があります。 まず、「value_count()」を使用してプロット内の出現をカウントし、次に「sort_index()」を使用してそれらを並べ替える必要があります。 棒グラフを作成するためのサンプルコードは次のとおりです。

random_reviews ['points']。value_counts()。sort_index()。plot.bar()

'plot.barh()'メソッドを使用して、Pandasで水平棒グラフを作成できます。

random_reviews ['points']。value_counts()。sort_index()。plot.barh()

発生回数からデータをプロットすることもできます。

random_reviews.groupby( "country")。price.mean()。sort_values(ascending = False)[:5] .plot.bar()

折れ線グラフ

パンダで折れ線グラフを作成するには、「<dataframe> .plot.line()」を使用する必要があります。パンダでは、プロットする必要のあるすべての列を自動的にループする必要はありません。 この機能はMatplotlibでは使用できません。 コードは次のとおりです。

random.drop(['class']、axis = 1).plot.line(title ='ランダムデータセット')

散布図

「<dataset>.plot.scatter()」を使用して、パンダで散布図を作成できます。 x列とy列の名前の2つの引数を渡す必要があります。

その例は次のとおりです。

random.plot.scatter(x ='sepal_length'、y ='sepal_width'、title =”ランダムデータセット')

ヒストグラム

'plot.hist'を使用して、パンダでヒストグラムを作成します。 それを除けば、この方法にはあまりありません。 単一のヒストグラムまたは複数のヒストグラムを作成するオプションがあります。

1つのヒストグラムを作成するには、次のコードを使用します。

random_reviews ['points']。plot.hist()

複数のヒストグラムを作成するには、次を使用します。

random.plot.hist(subplots = True、layout =(2,2)、figsize =(10、10)、bins = 20)

シーボーン

SeabornはMatplotlibに基づいており、データ視覚化のための非常に人気のあるPythonライブラリでもあります。 データをプロットするための高度なインターフェイスを提供します。 それは多くの機能を備えています。 その高度な機能により、Matplotlibで必要とされるよりもはるかに少ないコード行で優れたグラフを作成できます。

ヒストグラム

折れ線グラフ

'sns.line plot'メソッドを使用して、Seabornで折れ線グラフを作成できます。 'sns.kdeplot'メソッドを使用して、線の曲線のエッジを丸めることができます。 外れ値が多い場合は、プロットを非常にきれいに保ちます。

sns.lineplot(data = random.drop(['class']、axis = 1))

散布図

Seabornでは、「。scatterplot」メソッドを使用して散布図を作成できます。 この場合、Pandasで行ったように、x列とy列の名前を追加する必要があります。 しかし、違いがあります。 Pandasで行ったようにデータに対して関数を呼び出すことはできないため、追加の引数として渡す必要があります。

sns.scatterplot(x ='sepal_length'、y ='sepal_width'、data = iris)

'hue'引数を使用すると、特定のポイントを強調表示することもできます。 この機能は、Matplotlibではそれほど簡単ではありません。

sns.scatterplot(x ='sepal_length'、y ='sepal_width'、hue ='class'、data = iris)

棒グラフ

'sns.countplot'メソッドを使用して、Seabornで棒グラフを作成できます。

sns.countplot(random_reviews ['points'])

Pythonでのデータ視覚化の重要なライブラリについて説明したので、他の形式のグラフを見てみましょう。 Pythonとそのライブラリを使用すると、さまざまな種類の図を作成してデータをプロットできます。

Pythonでの他の種類のデータ視覚化

円グラフ

円グラフは、円のさまざまなセクションのデータを示します。 あなたは学校でたくさんの円グラフを見たに違いありません。 円グラフは、データをパーセンテージで表します。 円グラフのすべてのセグメントの合計は100%に等しくなければなりません。 サンプルコードは次のとおりです。

plt.pie(df ['Age']、labels = {“ A”、“ B”、“ C”、

「D」、「E」、「F」、

「G」、「H」、「I」、「J」}、

autopct ='%1.1f %%'、shadow = True)

plt.show()

plt.pie(df ['Income']、labels = {“ A”、“ B”、“ C”、

「D」、「E」、「F」、

「G」、「H」、「I」、「J」}、

autopct ='%1.1f %%'、shadow = True)

plt.show()

plt.pie(df ['Sales']、labels = {“ A”、“ B”、“ C”、

「D」、「E」、「F」、

「G」、「H」、「I」、「J」}、

autopct ='%1.1f %%'、shadow = True)

plt.show()

箱ひげ図

箱ひげ図は、統計データの最小値、第1四分位数、中央値、第3四分位数、および最大値に基づいています。 グラフはボックス(より具体的には長方形)のように見えます。 そのため、「箱ひげ図」という名前が付けられています。 箱ひげ図を作成するためのサンプルコードは次のとおりです。

#データフレームの数値属性ごと

df.plot.box()

#個々の属性の箱ひげ図

plt.boxplot(df ['Income'])

plt.show()

また読む:すべてのPython開発者が知っておくべきトップ10のPythonツール

結論

この記事がお役に立てば幸いです。 Pythonとそのさまざまなライブラリを介してプロットできるグラフにはさまざまな種類があります。 これまでにPythonデータの視覚化を実行したことがない場合は、Matplotlibから始める必要があります。 それを習得した後、PandasやSeabornなどのより複雑で高度なデータ視覚化ライブラリに移動できます。

python、データサイエンスについて知りたい場合は、IIIT-BとupGradのデータサイエンスのPGディプロマをチェックしてください。これは、働く専門家向けに作成され、10以上のケーススタディとプロジェクト、実践的なハンズオンワークショップ、業界の専門家とのメンターシップを提供します。業界のメンターとの1対1、400時間以上の学習、トップ企業との就職支援。

Pythonで最高のデータ視覚化ライブラリはどれですか?

データの視覚化は、データ分析の非常に重要な部分であると考えられています。 これは、いくつかのデータの傾向と情報を視覚的な形式で理解するよりも良い方法がないためです。 会社のデータを書面で提示すると、人々はそれを退屈に感じるかもしれません。 しかし、同じものを視覚的な形式で提示すると、人々は間違いなくそれにもっと注意を払うでしょう。

データの視覚化プロセスを簡素化するために、Pythonには特定のライブラリがあります。 要件に完全に依存するため、特定の1つが最適であるとは言えません。 Pythonで最高のデータ視覚化ライブラリには、matplotlib、plotly、seaborn、GGplot、およびaltairがあります。

Pythonで最高のプロットライブラリの1つはどれですか?

データの視覚化とライブラリのプロットに関しては、作業を簡単にするためにそれらがたくさんあります。 利用可能なすべてのライブラリの中で、Matplotlibはユーザーにとってより優れたライブラリであると考えられています。

Matplotlibは占有するスペースが少なく、実行時間も長くなります。 それ以外に、ユーザーがアプリケーション自体でグラフをプロットできるようにするオブジェクト指向APIも提供します。 Matplotlibは、無料でオープンソースであることに加えて、多くの出力タイプもサポートしています。

データサイエンティスト向けのデフォルトのデータ視覚化ライブラリはどれですか?

データサイエンスに興味がある場合は、Matplotlibライブラリをすでに使用している可能性が高くなります。 初心者から経験豊富な専門家まで、複雑なデータの視覚化を構築するためにこのライブラリを使用することを好むことがわかっています。

その大きな考慮事項の背後にある主な理由は、2Dプロットライブラリとしてユーザーに提供する柔軟性の量です。 MATLABのバックグラウンドをお持ちの場合は、MatplotlibのPyplotインターフェイスが非常に馴染み深いことに気付くでしょう。 したがって、最初の視覚化を開始するのに多くの時間を必要としません。 ユーザーは、Matplotlibの視覚化全体を最も詳細なレベルから制御できます。