散布図

Python 2次元XYデータについて、指定した座標に最も近いN個の点を抽出する

下図は、本プログラムの実行例です。100個のランダムデータがあって、赤点は任意に指定したx,y座標 (0.75, 0.58)です。青点はプログラム実行によって得られた赤点に最も近いN=5個を抽出した結果です。 下図は、上記の青点のデータである。pandasデータフレ…

Python 散布図にて象限別に色分けする。またグラフ上にデータ点名を表記する。

本記事では、下図のような散布図の雛形コードを載せました。特徴は、第1から第4象限までの各象限のデータを異なる色でプロットします。また、各データポイントのデータ名を散布図上に表記します(この例では‘A’から’J’)。これにより、データを識別するのが…

Python 行列散布図にて、横軸と縦軸を各々リストで指定する「sns.pairplot」

本記事では、下図のような行列散布図を作成します。特に、横軸(X軸)と縦軸(Y軸)をそれぞれリストで指定してプロットします。ここでは、X軸にWeight, Waist, Pulse の3つを指定し、Y軸にChins, Situps, Jumps の3つを指定した図です。 下図は、上記をプロ…

Python カテゴリ変数を作成し、散布図を作成する

本記事では下図の凡例(legend)のRMのようにカテゴリ変数を指定数に分割して作成する。またそれを散布図にする雛形コードを載せました。 下図中にある列名「RM」のデータから、列名「label」というカテゴリ変数を作成します。それを上図のようにカテゴリ別…

Python グラフの凡例に指定したい色を設定する

'21/12/05更新:折れ線図だけの場合の雛形コードも追記しました。 本記事では、凡例(legend)の順番に従って段階的に変化した色を適応したい場合の雛形コードを載せました。 下図の例では、凡例が0, 1, 2の3つあります。これらが水色から紫へと段階的に変化…

Python 交互作用図を作成する「interaction_plot」

'22/06/10更新:グラフの体裁のため、雛形コードを多少編集しました。 本記事では、下図のような交互作用図を作成する雛形コードを載せました。縦軸は、出力指標Yのデータ平均で,横軸と凡例は入力因子Xです。 例えば、凡例によって線の傾きが異なることがあ…

Python 3次元データを2次元散布図で表記する

本記事では、下図のように3次元データを2次元散布図で表現する雛形コードを載せました。 例題に使用したデータは機械学習でお馴染みのボストンデータセットです。図例では、X軸にRM(部屋数)、Y軸にLSTAT(低所得者の割合)、(Z軸)カラーにPRICE(部屋の価…

Python 重複プロット点を避ける散布図+近似式

本記事では下図のような散布図を作成する雛形コードを作成しました。これは、seabornのregplotメソッドで、x_jitterを使用することでできます。jitterはゆらぎです。 上記の元データは下図のようなcsvです。x列が横軸にプロットするx値、y列が縦軸にプロット…

Python カテゴリ別に色を指定して、散布図を作成する「JupyterLab向け」

'21/12/22更新:カテゴリの色を指定するコードを追記しました。 上図のデータ元は、下図のように横軸がA列, 縦軸がE列、カテゴリ変数はF列です。 ■本プログラム #!/usr/bin/env python # coding: utf-8 # In[1]: import pandas as pd file_path = 'test_data…

Python クラス数を指定して分類するクラスター分析「k-means」

'22/07/02更新:クラスタリング前の散布図を冒頭に追加 本記事では、クラス数を指定してクラスター分析(クラスタリング)する雛形コードを載せました。分析結果は、グラフ化してcsvファイルに出力する仕様です。 例題データには、siciki-learnにあるワイン…

Python カテゴリ別にプロットする散布図を作成する(カテゴリデータが行方向に塊りである場合)「plt.scatter」

'21/05/26更新:コードの可読性を多少良くしました。 本記事では、例えば、下図のように「t=1, t=2, t=3」をカテゴリとした散布図を作成する雛形コードを載せました。 本プログラムの仕様について説明します。下図のようなcsvファイルがあって、Time_1, Time…

Python Y軸の列名を指定して散布図の作成「sns.pairplot」。更にY軸の範囲を設定する

'21/12/17更新:カテゴリの識別を色でなくて、マーカーでする場合の雛形コードを追記しました。 本記事では、下図のような散布図を作成する雛形コードを載せました。seabornのpairplotを用います。 Y軸の列名を指定するには下記のようにします。 y_vars = 'P…

Python 行列散布図の作成「seaborn」

'22/02/19更新:図中の上にタイトルを記載するコードを追記しました。 本記事では、下図のような行列散布図を作成して、画像ファイルに保存する雛形コードを載せました。 ちなみに、上図のデータは、機械学習の分類で有名なアイリスデータセットです。seabor…

Python 3Dグラフを回転する。さらに各画像や動画で保存する方法「matplotlib×OpenCV」

本記事では、matplotlibで作成した3Dグラフを回転して表示する方法と、それらを画像(png, jpg)や動画(mp4)で保存する雛形コードを載せました。 ■本プログラムの仕様三次元にプロットするデータは何でも構いませんが、ここでは下表のような4点としました。 x …

Python ひとつのcsvからX軸と「Y軸にしたい複数列」を指定して、ひとつの散布図を作成する

'22/05/03更新:コマンドライン向け、JupyterLab向けの雛形コードを載せました。 本記事では、下図のような散布図を作成するコードを載せました。フォントサイズ、散布図、折れ線図、ラベル、タイトル、凡例の指定ができて、jpgファイルに保存する仕様です。…

Python 複数のcsvからX,Y軸にしたい列名を指定して、ひとつの散布図を作成する

'21/06/15更新:グラフ化のオプション設定をいくつか追記しました。 複数のcsvファイルから下図のような散布図一枚を作成する雛形コードを載せました。 下図は、csvファイルの例です。一行目がヘッダーでなくても、データ開始行が2行目でなくても、pandasだ…

Python 格子点(グリッド)を線形補完して等高線図を作成する「scipy.interpolate.griddata」

'22/03/24更新:等高線の数を指定数に、等間隔に自動分割する機能を追加。 等高線図を作成するためのcsvファイルを準備します。実験データやシミュレーションデータを想定しています。下図はそのcsvファイルの例で、少なくともx,y,zの3列が必要です。グラフ…

Python モンテカルロシミュレーションにより円周率π=3.14を導く

モンテカルロ法とは乱数を用いて行うシミュレーションの手法のことです。本記事の内容は、ググったら出てくるような内容をPythonを用いて実行できる雛形コードを載せました。本コードの特徴は次の2つです。1. 乱数を一様乱数の場合と、正規乱数の場合で実行…

Python グラフに横線(縦線)とテキストを挿入する方法「matplotlib」

'22/05/03更新:コードに冗長な箇所があったのを若干短くした。 本記事では、散布図や折れ線図等で判断基準線が視覚的にわかるグラフを作成する雛形コードを載せました。下図のように、グラフ中に1. 赤色の横点線を入れ、2. 「判断基準1000以上」等とテキス…

Python グラフのy範囲を最小値0、最大値は自動設定にする方法「matplotlib」

デフォルト設定でグラフを作成すると、軸の最小、最大の範囲は自動で設定されます。例えば、下図のように縦軸yの最小値が0にならない場合が普通です。これは、散布図や棒グラフ等で何かしら比較したい場合に、一見大きな差があるかのようなグラフの仕上がり…

Python グラフ化/複数列抽出/列計算/列方向連結/列方向ソートする方法「pandas」

本記事に記載してるコードの仕様説明をします。下図のようなcsvファイルがある。 aaa,bbb,y,x,ccc 0.01,1,100,1,10 0.025,2,40,2.5,9 0.05,3,20,5,8 0.075,4,13.33333333,7.5,7 0.1,5,10,10,6 0.2,6,5,20,5 0.3,7,3.333333333,30,4 0.4,8,2.5,40,3 0.5,9,2,5…

Python データセットに関数フィッティング(近似式)してグラフに記入する「Numpy×SciPy」

'24/05/06更新:可読性向上のため、コードをクラスに書き換えました。 本記事では、データセットに対して、所望の関数にフィッティングして近似式を作成する雛形コードを載せました。scipyのoptimize.curve_fitを利用します。 ▼比例近似:y = ax にしたい場…

Python 複数列を指定して、2軸の散布図を作成する「Matplotlib」

'22/05/03更新:コードを簡潔に見直しました。 本記事では、2軸プロットの散布図を作成する雛形コードを載せました。例えば、下表のような複数列のcsvデータがあったとします。x軸に列名「time」, Y軸の第一軸に列名「linear」, Y軸の第二軸に列名「log」を…

Python 1ファイルに全ステップ分が記述されたcsvから散布図を作成する「時間に関する列がない場合」

'21/02/26更新:本文更新。 下図のような行方向に全ステップの時系列データがあるとします。この例では、Time,1 Time,2 Time,3…で区切られています。 本プログラムを実行すると、下図のように時間毎にグラフにプロットした画像ファイルで保存します。 ちなみ…

Python 1ファイルに全ステップ分が記述されたcsvから散布図を作成する「時間に関する列がある場合」

'21/02/26更新:本文更新。 下図のように行方向に全ステップの時系列データがあるとします。この例では、一番左の列に時間に関するデータがあります。 本プログラムを実行すると、下図のように散布図を作成します。この時、指定した2つには赤と青の色を付け…

Python 複数のcsvファイルから指定したxyデータをExcelへ抽出して散布図を作成する「openpyxl」

'20/01/31更新:文末の関連記事を更新したことで、本記事のコードを更新しました。 本記事では、次の1,2のような処理をすることで、最終的に下図のような表と散布図を作成します。1. 複数のcsvファイルから指定した2列をそれぞれ抽出して、列方向へ並べてゆ…

Python Excelファイルで散布図を作成する「openpyxl」

# '20/01/31更新:右記リンク先更新に伴い、本記事のコードも更新しました→Python csvファイル中にある指定2列を複数ファイルからひとつのExcelファイルを作成する - HK29’s blog 本記事では、下図のような複数のXYデータが列方向へ順番に並んでいるExcelフ…