Python-pandas-visualization

提供:Dev Guides
移動先:案内検索

Pythonパンダ-視覚化

基本的なプロット:プロット

SeriesおよびDataFrameのこの機能は、 matplotlib * libraries plot()*メソッドの単純なラッパーです。

import pandas as pd
import numpy as np

df = pd.DataFrame(np.random.randn(10,4),index=pd.date_range('1/1/2000',
   periods=10), columns=list('ABCD'))

df.plot()

その*出力*は次のとおりです-

基本的なプロット

インデックスが日付で構成されている場合、* gct()。autofmt_xdate()*を呼び出して、上の図に示すようにx軸をフォーマットします。

*x* および *y* キーワードを使用して、ある列と別の列をプロットできます。

プロット方法では、デフォルトのラインプロット以外のいくつかのプロットスタイルを使用できます。 これらのメソッドは、* plot()*のkindキーワード引数として提供できます。 これらには-

  • バープロットのバーまたはバー
  • ヒストグラムの履歴
  • 箱ひげ図の箱
  • 面積プロットの「面積」
  • 散布図の「散布」

バープロット

バープロットを作成して、バープロットとは何かを見てみましょう。 バープロットは次の方法で作成できます-

import pandas as pd
import numpy as np

df = pd.DataFrame(np.random.rand(10,4),columns=['a','b','c','d')
df.plot.bar()

その*出力*は次のとおりです-

棒グラフ

積み上げ棒グラフを作成するには、 passstacked = True -

import pandas as pd
df = pd.DataFrame(np.random.rand(10,4),columns=['a','b','c','d')
df.plot.bar(stacked=True)

その*出力*は次のとおりです-

積み上げ棒グラフ

水平棒グラフを取得するには、 barh メソッドを使用します-

import pandas as pd
import numpy as np

df = pd.DataFrame(np.random.rand(10,4),columns=['a','b','c','d')

df.plot.barh(stacked=True)

その*出力*は次のとおりです-

水平バープロット

ヒストグラム

ヒストグラムは、* plot.hist()*メソッドを使用してプロットできます。 ビンの数を指定できます。

import pandas as pd
import numpy as np

df = pd.DataFrame({'a':np.random.randn(1000)+1,'b':np.random.randn(1000),'c':
np.random.randn(1000) - 1}, columns=['a', 'b', 'c'])

df.plot.hist(bins=20)

その*出力*は次のとおりです-

plot.hist()を使用したヒストグラム

列ごとに異なるヒストグラムをプロットするには、次のコードを使用します-

import pandas as pd
import numpy as np

df=pd.DataFrame({'a':np.random.randn(1000)+1,'b':np.random.randn(1000),'c':
np.random.randn(1000) - 1}, columns=['a', 'b', 'c'])

df.diff.hist(bins=20)

その*出力*は次のとおりです-

列のヒストグラム

箱ひげ図

Boxplotは、* Series.box.plot()および DataFrame.box.plot()、または DataFrame.boxplot()*を呼び出して描画し、各列内の値の分布を視覚化できます。

たとえば、これは[0,1)上の一様なランダム変数の10回の観測の5回の試行を表す箱ひげ図です。

import pandas as pd
import numpy as np
df = pd.DataFrame(np.random.rand(10, 5), columns=['A', 'B', 'C', 'D', 'E'])
df.plot.box()

その*出力*は次のとおりです-

ボックスプロット

面積プロット

エリアプロットは、* Series.plot.area()または DataFrame.plot.area()*メソッドを使用して作成できます。

import pandas as pd
import numpy as np

df = pd.DataFrame(np.random.rand(10, 4), columns=['a', 'b', 'c', 'd'])
df.plot.area()

その*出力*は次のとおりです-

エリアプロット

散布図

散布図は、* DataFrame.plot.scatter()*メソッドを使用して作成できます。

import pandas as pd
import numpy as np
df = pd.DataFrame(np.random.rand(50, 4), columns=['a', 'b', 'c', 'd'])
df.plot.scatter(x='a', y='b')

その*出力*は次のとおりです-

散布図

円グラフ

円グラフは、* DataFrame.plot.pie()*メソッドを使用して作成できます。

import pandas as pd
import numpy as np

df = pd.DataFrame(3 * np.random.rand(4), index=['a', 'b', 'c', 'd'], columns=['x'])
df.plot.pie(subplots=True)

その*出力*は次のとおりです-

円グラフ