Help us understand the problem. What is going on with this article?

[Python] CufflinksでPandasのデータフレームをPlotlyに一発描画

More than 3 years have passed since last update.

はじめに

以前、[Python] Plotlyでぐりぐり動かせるグラフを作るの記事で、インタラクティブなグラフを描画することができるPlotlyというライブラリを紹介しました。ただ、Plotlyの描画に至るまでに唱える呪文をいまいち覚えきれず、毎回どこかからコピペをしており、手軽に使用できないかなと常々思っていました。

そんな状況で、Cufflinksという、Pandasのデータフレームから、Plotlyを用いたグラフを一発で描画するライブラリを見つけたので紹介します。

Cufflinksのインストールと使いかた

インストールは、pip install cufflinksで完了です。
描画するには、Cufflinksをインポートしてから、df.plot()と同じように、df.iplot()と打ち込むだけと簡単!

import pandas as pd
import numpy as np
df = pd.DataFrame(np.random.randn(10, 2), columns=["col1", "col2"])

import cufflinks as cf
# デフォでPlotlyのオンラインモードとなっているのでオフラインモードへと変更
# 恒久的にデフォルトをオフラインモードとする方法は下に記述
cf.go_offline()
df.iplot()

newplot.png

細かい設定

細かい設定は、公式ページにあるTutorialsを参照ください。
また、使いそうな例を下記に示します。

デフォルト設定の変更

# オフラインモード、白基調のテーマ、リンク表示OFFをデフォルト設定に
cf.set_config_file(offline=True, theme="white", offline_show_link=False)

タイトル、初期表示領域の指定

df.iplot(xTitle="X軸名", yTitle="Y軸名", title="タイトル")
df.iplot(xrange=[0,5], yrange=[0,1])

散布図

df.iplot(kind="scatter" mode='markers', x="col1", y=["col2"]) # 系列は列名で指定

subplot

df.iplot(subplots=True, shape=(2,1), shared_xaxes=True)

第2Y軸プロット

fig = df.figure(secondary_y="col2", yTitle="ylabel", xTitle="xlabel")
fig.layout.yaxis2.title = "y2label"
cf.iplot(fig)
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした