-
Matplotlibで開いているすべてのpyplotウィンドウを閉じる方法
Matplotlibで複数の図(figure)ウィンドウを開いたまま作業していると、メモリの無駄遣いや表示の混乱につながることがあります。この記事では、close()メソッドを使ってpyplotのウィンドウを閉じるさまざまな方法を解説します。close()メソッドの使い方一覧Matplotlibでは、状況に応じて以下のようにclose()を使い分けることができます。plt.figure().close():特定の図ウィンドウを閉じます。close():引数なしで呼び出すと、現在アクティブな図を閉じます。close(h):Figureインスタンス h を指定すると、その図だけを閉じます。clos
-
【Matplotlib】アノテーション(テキスト)を回転させて線に一致させる方法
Matplotlibでグラフ上のアノテーション(テキスト)を回転させ、直線の傾きに一致させる方法を解説します。ポイントは、直線の傾きから回転角度(theta)を計算し、text()メソッドのrotation引数に渡すことです。 実装の手順 figure()メソッドを使用して、新しい図を作成するか、既存の図をアクティブにします。 add_subplot()メソッドを使用して、サブプロットとしてAxesを図に追加します。 直線の傾きmと切片cの変数を初期化します。 NumPyを使用して、xおよびyのデータ点を作成します。 テキストの回転角を求めるためにthetaを計算します。 plot()メソ
-
Matplotlibで軸(Axes)作成後にサブプロットのサイズ・位置を変更する方法
Matplotlibでは、軸(Axes)を作成した後でも、GridSpecクラスを活用することでサブプロットのサイズや位置を柔軟に変更できます。以下の手順に沿って実装方法を見ていきましょう。 figure()メソッドを使って、新しい図を作成するか、既存の図をアクティブにします。 add_subplot()メソッドを使って、図にサブプロット配置の一部として「~.axes.Axes」を追加します。 GridSpec()クラスを使って、図内にサブプロットを配置するためのグリッドレイアウトを定義します。 グリッドスペックの位置を取得し、set_position()で対象の軸に適用します。 set_s
-
Matplotlibで目盛りと目盛りの間にX軸ラベルを中央揃えで配置する方法
Matplotlibでは、補助目盛り(minor tick)を活用することで、主目盛りと主目盛りの間にラベルを中央揃えで表示できます。ここでは、株価の日付データを例に、月ごとのラベルを目盛りの間に配置する手順を解説します。実装の手順サンプルデータ(r)を読み込みます。配列のコピーを作成し、指定した型にキャストします。subplots() メソッドを使って、図とサブプロットを作成します。日付データとサンプルデータ r をプロットします。set_major_locator() および set_minor_locator() メソッドで、主目盛り・補助目盛りのロケーター(位置)を設定します。set_
-
matplotlib.pyplotでテーブルのフォントサイズを変更する方法
matplotlibで作成したテーブルのフォントサイズを変更するには、set_fontsize()メソッドを使用します。ポイントは、その前にauto_set_font_size(False)を呼び出して自動調整機能を無効化することです。これにより、指定したフォントサイズが確実に反映されます。 手順 図(figure)とサブプロットを作成します(nrows=1、ncols=1)。 numpyを使ってランダムなデータを生成します。 列名(columns)を定義します。 軸をtightに設定し、表示をoffにします。 フォントサイズを変更するための変数を初期化します。 auto_set_font_
-
Matplotlibでカラーバー付き2D行列をPythonでプロットする方法
Pythonでカラーバー付きの2D行列をプロットするには、numpyを使って2次元配列(行列)を作成し、そのデータをimshow()メソッドに渡すのが最も簡単な方法です。手順numpyを使用して data2D という2次元配列を作成します。imshow() メソッドを使い、データを画像として(2次元の正規ラスタ上に)表示します。colorbar() メソッドに imshow() が返す ScalarMappable インスタンスを渡し、カラーバーを作成します。これにより、色と数値の対応関係がひと目でわかるようになります。図を表示するには、show() メソッドを使用します。コード例import
-
Matplotlibでサンプルデータから確率密度関数をプロットする方法
概要サンプルデータから確率密度関数をプロットするには、NumPyでx軸・y軸のデータポイントを生成し、Matplotlibのplot()メソッドで描画するのが一般的です。ここでは、ガウス関数(正規分布に似た釣り鐘型の曲線)を例に、その基本的な手順をわかりやすく解説します。手順numpyを使ってxとpのデータポイントを作成します。plot()メソッドでxとpのデータポイントをプロットします。xlim()メソッドでX軸の表示範囲を設定します。図を表示するにはshow()メソッドを使用します。コード例import numpy as np from matplotlib import pyplot a
-
MatplotlibとSeabornのカウントプロットで表示するグループ数を制限する方法
Seabornのカウントプロット(countplot)で表示されるグループの数を制限したい場合、countplot()メソッドの引数で使用できる変数group_countを活用すると簡単に実現できます。手順図(figure)と2つのサブプロットを作成します。Pandasを使って、複数のキー(列)を持つデータフレームを作成します。グループ数を制限するための変数group_countを初期化します。countplot()メソッドを使用して、各カテゴリビンごとの観測値の数を棒グラフとして表示します。このとき、order引数にgroup_countを適用することで、表示するグループ数を制御します。サブ
-
NumPyとMatplotlibで画像セグメンテーションをオーバーレイ表示する方法
NumPyとMatplotlibを組み合わせると、画像セグメンテーションの結果を元画像の上に重ねて(オーバーレイ)表示できます。マスク配列を活用すれば、検出した領域だけを色付きで半透明に強調することが可能です。 実装の手順 10×10のサイズを持つマスク配列を作成します。 一部の領域(中央部分)の値を1に更新します。 NumPyを使って画像データを生成します。 条件を満たす要素をマスクし、マスク済みデータを作成します。 figure()メソッドで新しい図を作成、または既存の図をアクティブ化します。 imshow()メソッドでデータを2次元ラスタ画像として表示します。 show()メソッドで図
-
Pythonのpyplotで複数のサブプロットに水平線を描画する方法
PythonのMatplotlibで複数のサブプロット(グラフ)に水平線を描画したい場合、subplots()メソッドで複数の軸(Axes)を取得し、各軸に対してaxhline()メソッドを使うことで実現できます。手順figureオブジェクトとサブプロットを作成します。ここでは3つのサブプロットを作成します。axhline()メソッドを使用して、それぞれの軸に水平線を描画します。色や線幅は引数で自由に指定できます。show()メソッドを呼び出して、図を画面に表示します。コード例from matplotlib import pyplot as plt fig, (ax1, ax2, ax3) =
-
Matplotlibでエッジカラー付きの長方形を描画する方法
Matplotlibで長方形にエッジカラー(枠線の色)を設定して描画するには、以下の手順に従います。figure() メソッドを使用して、新しい図を作成するか、既存の図をアクティブにします。add_subplot() メソッドで、現在の図にサブプロット(Axes)を追加します。Rectangle() クラスを使用して長方形のインスタンスを作成し、edgecolor(枠線の色)と linewidth(枠線の太さ)を指定します。塗りつぶしの色は facecolor で設定できます。add_patch() メソッドを使って、作成した長方形をプロットに追加します。長方形の中にテキストを配置したい場合は
-
Matplotlibのループプロットでマーカーとラインに同じ色を設定する方法
Matplotlibでループ処理により複数のデータ系列を描画する際、「マーカー」と「ライン」に同じ色を割り当てたい場面はよくあります。本記事では、そのための基本的な手順と、色を確実に揃えるための実践的な方法をコード例とともに解説します。 基本の手順 numpy を使用して m、n、x のデータポイントを初期化します。 figure() メソッドで新しい図を作成、または既存の図をアクティブ化します。 clf() メソッドで図をクリアします。 subplot() メソッドで現在の図にサブプロットを追加します。 itertools.cycle を利用して、複数種類のマーカーを順番に取得できるよう
-
matplotlib.pyplot.scatterのデフォルトの青色を取得する方法を解説
matplotlibでscatter()メソッドを使って散布図を描くとき、色を指定しなければ点は自動的に青色(#1f77b4)で描画されます。この記事では、matplotlibのscatterプロットにおけるデフォルトの青色を実際に確認・取得する方法を、コード例とともにわかりやすく解説します。 デフォルトの青色とは matplotlibのデフォルトのカラーサイクル(C0)に含まれる最初の色が#1f77b4であり、これがscatterプロットで色を指定しない場合に使われる青色です。以下のサンプルコードでは、色を指定せずに描いた点と、16進数カラーコード「#1f77b4」を明示的に指定して描いた点
-
MatplotlibでJupyterノートブックのmatshow()のfigsize(図のサイズ)を変更する方法
Matplotlibのmatshow()メソッドで表示される図のサイズ(figsize)を変更したい場合、figure()メソッドの引数にfigsizeを指定し、matshow()メソッドにはfignumを指定することで実現できます。手順figure()メソッドを使って、新しい図を作成するか、既存の図をアクティブにします。このとき、figsize引数で図のサイズを指定できます。Pandasを使ってデータフレームを作成します。matshow()メソッドを使って、配列を行列として新しい図ウィンドウに表示します。引数fignumには、None、整数、または0を指定できます。Noneの場合:自動的に番
-
Python OpenCVで画像を読み込む方法をわかりやすく解説
PythonのOpenCVライブラリを使えば、数行のコードで簡単に画像を読み込んで表示することができます。本記事では、OpenCVで画像を読み取る基本的な手順とサンプルコードを紹介します。画像を読み込む基本の手順OpenCVで画像を読み取り・表示するには、以下のステップに従います。ファイルから画像を読み込む(cv2.imread())指定したウィンドウに画像を表示する(cv2.imshow())キーが押されるまで待機する(cv2.waitKey())すべてのHighGUIウィンドウを破棄する(cv2.destroyAllWindows())サンプルコード以下は、画像ファイル「baseball.
-
Matplotlibで図のX軸にステップ(目盛り)を設定する方法
PythonのMatplotlibで図のX軸にステップ(目盛り)を設定するには、set_xticks() および set_xticklabels() メソッドを使用します。以下の手順で実装できます。 手順 データポイントのリスト x を作成します。 subplot() メソッドを使って、現在の図にサブプロットを追加します。 set_xticks() でX軸の目盛りの位置を指定し、set_xticklabels() でラベルを設定します。このとき、引数に rotation=45 を指定すると、ラベルを45度回転させて表示できます。 図を表示するには、show() メソッドを使用します。 コー
-
matplotlibでカラーバー(Colorbar)の目盛りのフォントサイズを変更する方法
matplotlibでカラーバーの目盛りラベルのフォントサイズを変更したい場合、tick_params()メソッドを使うのが最も簡単です。ここでは、具体的な手順とサンプルコードを紹介します。カラーバーの目盛りサイズを変更する手順5×5のランダムなデータセットを作成します。imshow()メソッドを使い、データを2次元の正規ラスタ(画像)として表示します。スカラーマッピング可能なオブジェクト(画像)をもとに、カラーバーを作成します。フォントサイズを格納する変数を初期化し、カラーバーの目盛りサイズの変更に備えます。カラーバーの軸に対してtick_params()メソッドを呼び出し、labelsiz
-
Matplotlibとnetworkxでノードの輪郭線の色を変更する方法
networkxで作成したグラフのノード輪郭(枠線)の色を変更したい場合は、set_edgecolor()メソッドを使用します。draw_networkx_nodes()で返されるノードコレクションオブジェクトに対してこのメソッドを呼び出すことで、ノードの外周に好きな色を付けることができます。実装の手順「from」列と「to」列を持つPandasデータフレームを作成します。エッジリストを含むデータフレームからnx.from_pandas_edgelist()でグラフを生成します。spring_layout()などでノードの配置位置を計算します。draw_networkx_nodes()を使って
-
Matplotlibのplt.colorbarでカラーバーの目盛り(ティック)数を設定する方法
Matplotlibでカラーバーの目盛り(ティック)の数や位置を設定するには、set_ticks()メソッドとset_ticklabels()メソッドを使用します。以下の手順で簡単に実装できます。 手順 NumPyを使ってランダムなデータを作成する imshow()メソッドでデータを画像として表示する(2次元の正規ラスタ上に描画) スカラーマッピング可能なオブジェクト(ScalarMappable)を引数に指定して、colorbar()メソッドでカラーバーを作成する set_ticks()とset_ticklabels()メソッドで、カラーバーの目盛りの位置とラベルを設定する show()メ
-
MatplotlibとSeabornのバープロットでエラーバーを非表示にする方法
Seabornのバープロット(棒グラフ)では、デフォルトで平均値に対するエラーバー(信頼区間)が自動的に表示されます。このエラーバーを非表示にしたい場合は、sns.barplot() の引数に ci=None を指定するだけで簡単に実現できます。 手順 オンラインリポジトリからサンプルデータセットを読み込みます(インターネット接続が必要です)。 ci=None を指定してバープロットを作成し、エラーバーを非表示にします。 plt.show() メソッドを使って図を画面に表示します。 サンプルコード import seaborn as sns import matplotlib.pyplot