IT練習ノート

IT関連で調べたこと(実際は嵌ったこと)を書いています。

matplotlibとggplotを使ってみる

# ライブラリのインポート
import pandas

# データの読み込み
df = pandas.read_csv('foo.csv')

# 必要なデータに絞る
df2 = df[['x','y']]

# x軸を分類する
df2['x_rank'] = df2['x'].apply(lambda x : int(x / 1000))

# matplotlibのインポート
import matplotlib.pyplot as plt
# matplotlibのスタイルの設定
plt.style.use('ggplot')

# ヒストグラムを作る
# 下記のようなオブジェクトが作られる
# <matplotlib.axes._subplots.AxesSubplot object at 0x106ba7eb8>
df2['x_rank'].hist()

# 画像を出力する
plt.savefig('test02.png')

# オブジェクトをクリアする
# 連続で画像を作成するときにクリアしないとうまくいかなかったような。。。
plt.clf()

# ggplotのインポート
from ggplot import *

# ヒストグラムを作る
p = ggplot(df2, aes(x='x', y)) + geom_histogram(binwidth=1)

# 保存
ggsave(p,'test.png')