検索
ホームページバックエンド開発Python チュートリアル強力なオープンソース Python 描画ライブラリ

強力なオープンソース Python 描画ライブラリ

May 11, 2023 pm 12:07 PM
python図面ライブラリ

功能强大的开源 Python 绘图库

私がこれまで matplotlib を使用してきた理由は、その複雑な構文を学ぶためであり、そのために何百時間もの時間コストが「費やされ」てきました。そのため、私は「日付のフォーマット」や「2 番目の Y 軸の追加」の方法を StackOverflow で検索することを数え切れないほど深夜に費やすことになりました。

しかし、現在では、使いやすく、文書が充実しており、強力なオープンソースの Python プロット ライブラリである Plotly など、より良い選択肢があります。今日は、非常に単純な (たった 1 行でも!) コードでより良いチャートを描画する方法を詳しく説明します。

この記事のすべてのコードは Github でオープンソース化されており、すべてのグラフはインタラクティブです。表示するには Jupyter ノートブックを使用してください。

(Github ソース コード アドレス: https://github.com/WillKoehrsen/Data-Analysis/blob/master/plotly/Plotly Whirlwind Introduction.ipynb)

功能强大的开源 Python 绘图库

(plotly で描画されたチャートの例。画像ソース:plot.ly)

Plotly の概要

plotly の Python パッケージは、plot.js をベースにしたオープン ソース コード ライブラリです。 d3.jsに基づいています。実際に使用するのは、plotly をカプセル化するカフリンクスと呼ばれるライブラリです。これにより、plotly と Pandas データ テーブルを連携して使用することが容易になります。

*注: Plotly 自体は、いくつかの異なる製品とオープンソース ツールセットを備えた視覚化テクノロジー企業です。 Plotly の Python ライブラリは無料で使用できます。オフライン モードでは無制限にチャートを作成できます。オンライン モードでは、Plotly の共有サービスを使用するため、生成および共有できるチャートは 25 個までです。

この記事のすべての視覚化チャートは、オフライン モードでプロットリー カフリンクス ライブラリを使用して、Jupyter Notebook で完成されました。 pip install cufflinks Lotly を使用してインストールを完了した後、次のコードを使用して Jupyter でのインポートを完了できます。

功能强大的开源 Python 绘图库

単一変数分布: ヒストグラムと箱ひげ図チャート

一変量分析チャートはデータ分析を開始する際の標準的な手法であることが多く、ヒストグラムは基本的に一変量分布分析に必要なチャートの 1 つです (ただし、まだいくつかの欠点があります)。

ブログ投稿の「いいね!」の合計数を例として取り上げて (元のデータについては Github を参照: https://github.com/WillKoehrsen/Data-Analysis/tree/master/medium)、簡単なインタラクティブなヒストグラム :

功能强大的开源 Python 绘图库

(コード内の df は標準の Pandas データフレーム オブジェクトです)

功能强大的开源 Python 绘图库

(plotly を使用して作成されたインタラクションカフリンクス ヒストグラム)

すでに matplotlib に慣れている学生の場合は、さらに 1 文字入力するだけ (.plot を .iplot に変更する) だけで、より美しく見えるインタラクティブなグラフが得られます。画像上の要素をクリックすると、詳細情報が表示され、ズームインおよびズームアウトし、(次で説明します) 画像の特定部分のフィルタリングなどの機能が強調表示されます。

積み上げ縦棒グラフを描画したい場合は、これを行うだけです。

功能强大的开源 Python 绘图库

功能强大的开源 Python 绘图库

#単純な単純な操作を実行するだけです。 pandas データ テーブルの操作 棒グラフを処理して生成します。

功能强大的开源 Python 绘图库

功能强大的开源 Python 绘图库

上記のように、plotly カフリンクスとプロットの機能を統合できます。 Together のパンダ。たとえば、最初に .pivot() を使用してピボット テーブル分析を実行し、次に棒グラフを生成できます。

たとえば、さまざまな出版チャネルの各記事によってもたらされた新しいファンの数を数えます:

功能强大的开源 Python 绘图库

功能强大的开源 Python 绘图库

インタラクティブなグラフの利点は、データを探索し、分析のためにサブ項目を自由に分割できることです。箱ひげ図は多くの情報を提供しますが、特定の値が見えないと、多くの情報を見逃してしまう可能性があります。

散布図

散布図は、ほとんどの分析の中核となる内容であり、時間の経過に伴う 1 つの変数の変化、または変数間の関係における 2 つ (またはそれ以上) の変化を確認できます。

時系列分析

現実の世界では、データのかなりの部分に時間要素が含まれています。幸いなことに、plotly カフリンクスには、時系列の視覚分析をサポートする機能が組み込まれています。

私が「Towards Data Science」Web サイトに公開した記事データを例に、公開時間を指標としてデータセットを構築し、記事の人気がどのように変化するかを見てみましょう。

功能强大的开源 Python 绘图库

功能强大的开源 Python 绘图库

上の図では、1 行のコードでいくつかのことを実現しています。

    # 美しい時刻を自動的に生成するシリーズ X 軸
  • 2 つの変数の範囲が一致しないため、2 番目の Y 軸を追加します
  • ## マウスをホバーしたときに表示されるラベルに記事タイトルを入力します
  • より多くのデータを表示するには、テキスト注釈を簡単に追加できます:

功能强大的开源 Python 绘图库

功能强大的开源 Python 绘图库 (テキスト注釈付き散布図)

以下のコードでは、3 番目のカテゴリ変数によって 2 変数の散布図に色を付けます。もう少し複雑な対数軸について説明します。これを実現するには、plotly のレイアウト パラメーターを指定し (さまざまなレイアウトについては、公式ドキュメント https://plot.ly/python/reference/ を参照してください)、ポイントのサイズ (サイズ パラメーター) と数値変数read_ratio(読み取り率)がバインドされており、数値が大きいほどバブルのサイズが大きくなります。

功能强大的开源 Python 绘图库

功能强大的开源 Python 绘图库もっと複雑にしたい場合は (詳細は Github のソース コードを参照)、1 つの画像に 4 つを詰め込むこともできます。 ! (ただし、実際にこれを行うことはお勧めしません)

#以前と同様に、パンダとプロットカフリンクスを組み合わせて、多くの便利なグラフを作成できます:功能强大的开源 Python 绘图库

功能强大的开源 Python 绘图库

# 公式ドキュメントまたはソース コードを確認することをお勧めします。これらには、より多くの例と関数インスタンスが含まれています。わずか 1 ~ 2 行のコードで、元の対話型機能を維持しながら、テキスト注釈、補助線、最適線などの便利な要素をグラフに追加できます。 功能强大的开源 Python 绘图库

高度な描画機能

次は、あまり使う機会はないかもしれませんが、上手に使いこなせば感動すること間違いなしの特殊なチャートをいくつか紹介していきます。人々。たった 1 行のコードで素晴らしいチャートを生成できる、plotly の Figure_factory モジュールを使用します。

功能强大的开源 Python 绘图库散布図行列

多くの異なる変数間の関係を調べたい場合は、散布図行列 (SPLOM とも呼ばれる) が最適です。 功能强大的开源 Python 绘图库

#このような複雑なグラフィックでも完全にインタラクティブであるため、データをより詳細に調査できます。

関係ヒート マップ

複数の数値変数間の関係を反映するために、それらの相関関係を計算し、ラベル付きヒート マップの形式で視覚化できます:

功能强大的开源 Python 绘图库

功能强大的开源 Python 绘图库

カスタマイズされたテーマ

無限の種類のグラフに加えて、Cufflinks にはさまざまな色付けテーマも用意されており、異なるグラフ スタイルを簡単に切り替えることができます。次の 2 つの図は、それぞれ「space」テーマと「ggplot」テーマです。

功能强大的开源 Python 绘图库

功能强大的开源 Python 绘图库

##さらに、3D チャート (表面) もあります。バブル Bubble):

功能强大的开源 Python 绘图库

功能强大的开源 Python 绘图库

リサーチに興味のあるユーザーにとって、円グラフを作成するのは難しくありません:

功能强大的开源 Python 绘图库

Plotly Chart Studio での編集

Jupyter Notebook でこれらのグラフを生成すると、グラフの右下隅に「」という小さなリンクが表示されることがわかります。 「plot.ly」にエクスポートします。このリンクをクリックすると「チャートワークショップ」(https://plot.ly/create/)にジャンプします。

ここでは、最終プレゼンテーションの前に図をさらに修正して磨きをかけることができます。注釈を追加したり、特定の要素の色を選択したり、すべてを整理して素晴らしい図を作成できます。後で、それを Web 上に公開して、他の人がレビューできるリンクを生成することもできます。

次の 2 つの写真はチャート ワークショップで作成されたものです:

功能强大的开源 Python 绘图库

功能强大的开源 Python 绘图库

ここまで述べたので、読んでみてください。全部見るのに飽きましたか?ただし、このライブラリのすべての機能を使い果たしたわけではありません。スペースの制限により、より適切なチャートと例がいくつかあるため、plotly と cufflinks の公式ドキュメントにアクセスして、1 つずつ確認してください。

功能强大的开源 Python 绘图库

(米国全土の風力発電所のデータを示すインタラクティブなマップをプロットします。出典: plot.ly)

最後に...

サンクコストの誤謬の最悪の点は、人々がこれまでの努力を放棄したときに初めてどれだけの時間を無駄にしたかに気づくことが多いことです。

図面ライブラリを選択する場合、最も必要な機能は次のとおりです。

データをすばやく探索するには 1 行のコード チャートが必要です。

    分割/インタラクティブな要素を必要とします。調査データ
  • 必要に応じて詳細をドリルダウンするオプション
  • 最終プレゼンテーション前に簡単にカスタマイズ
今後は、Python 言語を使用して目標を達成するのが最善の選択です上記の関数はプロットです。これにより、視覚的な図を迅速に生成でき、インタラクティブな機能により情報をより深く理解できるようになります。

プロットを作成することがデータ サイエンスの仕事で最も楽しい部分であることは間違いなく認めますが、プロットを使用すると、これらのタスクを完了することがさらに楽しくなります。

功能强大的开源 Python 绘图库

(グラフを使用して、Python で描画する喜びが時間の経過とともにどのように変化するかを示します。出典はwardsdatascience.com です)

2022 年はあなたをアップグレードするときですPython 描画ライブラリを使用して、データ サイエンスと視覚化でより速く、より強く、より美しくなりましょう。

以上が強力なオープンソース Python 描画ライブラリの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事は51CTO.COMで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。
Python:ゲーム、GUIなどPython:ゲーム、GUIなどApr 13, 2025 am 12:14 AM

PythonはゲームとGUI開発に優れています。 1)ゲーム開発は、2Dゲームの作成に適した図面、オーディオ、その他の機能を提供し、Pygameを使用します。 2)GUI開発は、TKINTERまたはPYQTを選択できます。 TKINTERはシンプルで使いやすく、PYQTは豊富な機能を備えており、専門能力開発に適しています。

Python vs. C:比較されたアプリケーションとユースケースPython vs. C:比較されたアプリケーションとユースケースApr 12, 2025 am 12:01 AM

Pythonは、データサイエンス、Web開発、自動化タスクに適していますが、Cはシステムプログラミング、ゲーム開発、組み込みシステムに適しています。 Pythonは、そのシンプルさと強力なエコシステムで知られていますが、Cは高性能および基礎となる制御機能で知られています。

2時間のPython計画:現実的なアプローチ2時間のPython計画:現実的なアプローチApr 11, 2025 am 12:04 AM

2時間以内にPythonの基本的なプログラミングの概念とスキルを学ぶことができます。 1.変数とデータ型、2。マスターコントロールフロー(条件付きステートメントとループ)、3。機能の定義と使用を理解する4。

Python:主要なアプリケーションの調査Python:主要なアプリケーションの調査Apr 10, 2025 am 09:41 AM

Pythonは、Web開発、データサイエンス、機械学習、自動化、スクリプトの分野で広く使用されています。 1)Web開発では、DjangoおよびFlask Frameworksが開発プロセスを簡素化します。 2)データサイエンスと機械学習の分野では、Numpy、Pandas、Scikit-Learn、Tensorflowライブラリが強力なサポートを提供します。 3)自動化とスクリプトの観点から、Pythonは自動テストやシステム管理などのタスクに適しています。

2時間でどのくらいのPythonを学ぶことができますか?2時間でどのくらいのPythonを学ぶことができますか?Apr 09, 2025 pm 04:33 PM

2時間以内にPythonの基本を学ぶことができます。 1。変数とデータ型を学習します。2。ステートメントやループの場合などのマスター制御構造、3。関数の定義と使用を理解します。これらは、簡単なPythonプログラムの作成を開始するのに役立ちます。

プロジェクトの基本と問題駆動型の方法で10時間以内にコンピューター初心者プログラミングの基本を教える方法は?プロジェクトの基本と問題駆動型の方法で10時間以内にコンピューター初心者プログラミングの基本を教える方法は?Apr 02, 2025 am 07:18 AM

10時間以内にコンピューター初心者プログラミングの基本を教える方法は?コンピューター初心者にプログラミングの知識を教えるのに10時間しかない場合、何を教えることを選びますか...

中間の読書にどこでもfiddlerを使用するときにブラウザによって検出されないようにするにはどうすればよいですか?中間の読書にどこでもfiddlerを使用するときにブラウザによって検出されないようにするにはどうすればよいですか?Apr 02, 2025 am 07:15 AM

fiddlereveryversings for the-middleの測定値を使用するときに検出されないようにする方法

Python 3.6にピクルスファイルをロードするときに「__Builtin__」モジュールが見つからない場合はどうすればよいですか?Python 3.6にピクルスファイルをロードするときに「__Builtin__」モジュールが見つからない場合はどうすればよいですか?Apr 02, 2025 am 07:12 AM

Python 3.6のピクルスファイルのロードレポートエラー:modulenotFounderror:nomodulenamed ...

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

WebStorm Mac版

WebStorm Mac版

便利なJavaScript開発ツール

SecLists

SecLists

SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

Dreamweaver Mac版

Dreamweaver Mac版

ビジュアル Web 開発ツール

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。