Python とJavaScript ではじめるデータビジュアライゼーション

出版日
ページ数
500
目次
まえがき はじめに 1章 開発環境の準備 1.1 本書で扱うコード 1.2 Python 1.3 JavaScript 1.4 データベース 1.5 統合開発環境 1.6 まとめ 第Ⅰ部 基本的なツールキット 2章 PythonとJavaScript間の言語学習の橋渡し 2.1 類似点と相違点 2.2 コードと対話する 2.3 基本的な橋渡し作業 2.4 実際の相違点 2.5 チートシート 2.6 まとめ 3章 Pythonにおけるデータの読み書き 3.1 ゆっくり行う 3.2 データの受け渡し 3.3 システムファイル 3.4 CSV、TSV、行/列データ形式 3.5 JSON 3.6 SQL 3.7 MongoDB 3.8 日付、時刻、複合データ 3.9 まとめ 4章 Web開発の基本 4.1 全体像 4.2 シングルページアプリケーション 4.3 ツールの準備 4.4 Webページの作成 4.5 Chromeのデベロッパーツール 4.6 プレースホルダを含む基本的なページ 4.7 SVG 4.8 まとめ 第Ⅱ部 データの取得 5章 PythonによるWebからのデータの取得 5.1 requestsライブラリを使ったWebデータの取得 5.2 requestsを使ったデータファイルの取得 5.3 PythonによるWeb APIからのデータの利用 5.4 ライブラリを使ったWeb APIへのアクセス 5.5 データのスクレイピング 5.6 スープの取得 5.7 タグの選択 5.8 まとめ 6章 Scrapyを使った重量スクレイピング 6.1 Scrapyの準備 6.2 対象の設定 6.3 xpathを使った対象HTMLの設定 6.4 最初のScrapyスパイダー 6.5 人物情報ページのスクレイピング 6.6 リクエストの連結とデータの作成 6.7 Scrapyパイプライン 6.8 パイプラインを使ったテキストと画像のスクレイピング 6.9 まとめ 第Ⅲ部 pandasを使ったデータのクリーニングと探索 7章 NumPy入門 7.1 NumPy配列 7.2 配列関数の作成 7.3 まとめ 8章 pandas入門 8.1 pandasがデータ可視化に最適である理由 8.2 pandasが開発された理由 8.3 異種データと測定値の分類 8.4 DataFrame 8.5 DataFrameの作成と保存 8.6 SeriesからDataFrameを作成する 8.7 パネル 8.8 まとめ 9章 pandasによるデータのクリーニング 9.1 ダーティデータに関する真実 9.2 データの調査 9.3 インデックスとpandasのデータ選択 9.4 データのクリーニング 9.5 完成したclean_data関数 9.6 クリーニングしたデータセットの保存 9.7 まとめ 10章 Matplotlibを使ったデータの可視化 10.1 pyplotとオブジェクト指向Matplotlib 10.2 対話型セッションの開始 10.3 pyplotのグローバル状態を使った対話型プロット 10.4 図とオブジェクト指向Matplotlib 10.5 プロットの種類 10.6 Seaborn 10.7 まとめ 11章 pandasを使ったデータ探索 11.1 探索の開始 11.2 pandasを使ったプロット 11.3 男女間の格差 11.4 国の傾向 11.5 受賞者の年齢と没年齢 11.6 受賞者の移住 11.7 まとめ 第Ⅳ部 データの配信 12章 データの配信 12.1 データの配信 12.2 静的ファイルの配信 12.3 Flaskでの動的データ 12.4 静的な配信を使うか動的な配信を使うか 12.5 まとめ 13章 FlaskにおけるRESTfulデータ 13.1 EveによるRESTful MongoDB API 13.2 可視化のためのデータ配信 13.3 Flask-RestlessによるRESTful SQL 13.4 まとめ 第Ⅴ部 D3を使ったデータの可視化 14章 ノーベル賞可視化のイメージ 14.1 対象者は誰か 14.2 可視化要素の選択 14.3 メニューバー 14.4 年別の受賞者数 14.5 選択した受賞国の地図 14.6 国別の受賞者を示す棒グラフ 14.7 選択した受賞者の一覧 14.8 完成イメージ 14.9 まとめ 15章 可視化 15.1 準備 15.2 HTMLスケルトン 15.3 CSSスタイル指定 15.4 JavaScriptエンジン 15.5 ノーベル賞可視化アプリケーションの実行 15.6 まとめ 16章 D3入門−棒グラフ 16.1 課題の認識 16.2 セレクション 16.3 DOM要素の追加 16.4 D3の利用 16.5 D3のスケールを使った範囲の調整 16.6 データバインディングによるD3能力の発揮 16.7 enterメソッド 16.8 バインディングされたデータへのアクセス 16.9 更新パターン 16.10 軸とラベル 16.11 遷移 16.12 まとめ 17章 各賞の可視化 17.1 フレームの作成 17.2 スケール 17.3 軸 17.4 受賞分野ラベル 17.5 データのネスト 17.6 ネストしたデータ結合による受賞者の追加 17.7 躍動感を与える遷移 17.8 まとめ 18章 D3を使った地図の作成 18.1 利用可能な地図 18.2 D3の地図データフォーマット 18.3 D3のgeo、投影法、パス 18.4 要素を組み合わせる 18.5 地図の更新 18.6 値を示す丸印の追加 18.7 完成した地図 18.8 簡単なツールチップの作成 18.9 まとめ 19章 受賞者の表示 19.1 リストの作成 19.2 人物情報ボックスの作成 19.3 まとめ 20章 メニューバー 20.1 D3によるHTML要素の作成 20.2 メニューバーの作成 20.3 まとめ 21章 終わりに 21.1 おさらい 21.2 今後の進展 21.3 最終的なまとめ 付録A 開発環境から本番環境への移行 A.1 最初のディレクトリ A.2 構成 A.3 認証 A.4 Flaskアプリケーションのテスト A.5 JavaScriptアプリケーションのテスト A.6 Flaskアプリケーションのデプロイ A.7 ロギングとエラー処理 索引
紹介( powered by openBD

Webからデータを取得して整理・分析し可視化するまで一連の流れがわかる!
本書はデータ可視化データフローを最初から終わりまでカバーします。生データを取得して、効率よく整理、分析を行い効果的な可視化を実現するには、さまざまなツールとテクニックが必要です。本書では場面によってPythonとJavaScriptを使い分け、それぞれの言語の強みを最大限利用します。具体的にはPythonのBeautifulSoupとScrapyでデータを取得、pandas, matplotlib, Numpyでデータ処理を行い、PythonのFlaskフレームワークを使ってデータを配信、D3.jsを使ってインタラクティブなWeb可視化を実現します。サンプル豊富な実践的な一冊です。