グラフ化

Python 「matplotlib」*c* argument looks like a single numeric RGB or RGBA sequence

本記事では、表題の警告が出た場合に、表示させないようにするための対策を載せました。下記をインポートして設定します。 from matplotlib.axes._axes import _log as matplotlib_axes_loggermatplotlib_axes_logger.setLevel('ERROR') ちなみに、警告の全…

Python 工程能力指数Cpkを計算する「pandas」

本記事では、csvファイルから各列のCpk(cpu, cplの小さい方)を計算して、csvファイルに出力する雛形コードを載せました。 また、下図のようにヒストグラムも作成します。 使用した例題のcsvデータの作成方法は、次のリンク先を参照下さい。https://hk29.ha…

Python 円グラフを作成する「matplotlib」

本記事では、下図のような円グラフを横並びで複数作成する雛形コードを載せました。 下図が使用したcsvデータです。 上記数値データは、次のリンク先の値を引用しました。http://www.stat.go.jp/naruhodo/4_graph/shokyu/obi-graph.html ■本プログラム #!/us…

Python 縦棒グラフの上にその数字を表示する「matplotlib」

本記事では、下図のような縦棒グラフを作成する雛形コードを載せました。 例題データは、下図のようなcsvファイルから、データをソート(並び替え)して上図を作成します。 ■本プログラム #!/usr/bin/env python # coding: utf-8 # In[1]: import pandas as …

Python 平均±3σの折れ線図を作成する「matplotlib」

本記事では、表題のことを成す雛形コードを記載しました。点は平均値で、上下に伸びてるエラーバーがここでは±3σを表します。 グラフ化する例題データは、下図のようなcsvファイルです。A列「month」をx軸にして、B列「data」に対してmonthのカテゴリ別に平…

Python 帯グラフを作成する

本記事では、下図のような帯グラフ(積み重ね棒グラフ)の雛形コードを載せました。 次のサイトを参考にさせて頂き、前処理の追加や私好みに多少編集しています。matplotlib - 積み上げ棒グラフを作成する方法 - pystyle 使用したデータは下図のようなcsvフ…

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 複数の画像ファイルを連結して1枚の画像ファイルを作成する「OpenCV, matplotlib, numpy」

'23/11/16更新:図例を見やすいのに差し替えたのとコードの可読性を若干向上しました。 本記事では、Pythonで複数の画像ファイル(jpg, png)を連結して1つの画像ファイルに保存する雛形コードを載せました。下図は、8枚の画像ファイルを3列3行の位置に配置し…

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

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

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

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

Python 多目的最適化「Optuna」

'21/03/03更新:浮動小数点以外の型の場合の制約条件「カテゴリ変数、整数、対数、離散値」の設定例を追記しました。 本記事では、Optunaを使った多目的最適化の雛形コードを載せました。 Optunaは、オープンソースの機械学習モデルのハイパーパラメータを自…

Python 新型コロナのcsvファイルを題材にデータ処理とグラフ化する「pandas」

本記事では、新型コロナに関する厚生労働省のHP (オープンデータ|厚生労働省)から入手できるcsvデータを例にpandasでデータを扱う雛形コードを載せました。Pythonでcsvなどのテキストファイルを扱うには十中八九pandas(パンダス)を利用することになります…

Python ピボットテーブルによるクロス集計。また、時系列データをグラフ化する「pandas」

pandasのpivot_tableで比較的簡単に処理できます。本記事では、データ処理の例として、愛知県の次のリンク先https://www.pref.aichi.jp/site/covid19-aichi/の中程にある新型コロナの「愛知県内の発生事例」のPDFファイル「8月まで [PDFファイル/357KB]」を…

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」

'20/05/16更新:移動平均計算を2つ→3つに増やし、計算によって生じた欠損値の行を削除してcsvファイルに出力する仕様に更新した。 本記事では、下図のような単純移動平均のグラフと、そのデータをcsvファイルで保存する雛形コードを載せています。 ●株価デー…

Python 株価を取得するAPI「yahoo_finance_api2」

本記事では例えば、下図のように1年分の株価データをダウンロードして、グラフ化とcsvファイル化するコードの雛形を記載しました。 ライブラリのインストールは下記のようにpipで行います。 pip install yahoo_finance_api2 ■本プログラム #!/usr/bin/env py…

Python pdfファイル内の表を読み取る「camelot」

本記事では、下図のようなpdfファイル中に表がある場合に適用する。下図例は愛知県内の感染者・遺伝子検査件数 - 愛知県よりダウンロードできる('20/04/22現在)。 表を抽出するに必要なライブラリ「camelot」は下記のようにpipでインストールします。 $ pi…

Python matplotlibで点を動かすアニメーションを作成し、gifもしくはmp4で動画保存する

'20/07/26更新:gifだけでなくmp4でも動画保存できるようにしました。またfpsも指定できます。 アニメーション作成には、matplotlib.animationを使用します。動画保存にはgifの場合はimagemagick、mp4の場合はffmpegを使用します。 ■本プログラム import num…

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」

'21/10/04更新:汎用性を高めるため、関数の引数を変更しました。3つの引数は順に、pandas DataFrame, X軸に指定する列名, Y軸に指定する列名です。 本記事では、下図3つのような近似式を作成する雛形コードを載せました。scipyのoptimize.curve_fitを利用し…

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

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

Python 二変数関数の等高線図、3D図を描画する方法

'20/08/10更新:記事とコードを若干編集しました。 本記事では、2つの方法について雛形コードを載せました。■1. numpyのndarray型の「二重配列」でデータセットしてグラフ化する方法二変数関数について、等高線図と三次元図を描画した例が下図5つです。 ■2. …