Python
 Computer >> コンピューター >  >> プログラミング >> Python

【Python入門】defで定義した関数をMatplotlibでプロットする方法

Pythonでは、defキーワードで定義した自作関数を、Matplotlibを使って簡単にグラフ化できます。本記事では、ユーザー定義関数 f(x) を作成し、その結果をプロットするまでの基本手順をサンプルコード付きで解説します。

プロットまでの基本手順

defで定義した関数をプロットするには、以下の手順に従います。

  • 図のサイズを設定し、サブプロット間および周囲の余白(パディング)を調整する
  • defを使ってユーザー定義関数 f(x) を作成する
  • NumPyを使って x のデータ点を生成する
  • plot()メソッドで xf(x) をプロットする
  • show()メソッドで図を画面に表示する

サンプルコード

import numpy as np
from matplotlib import pyplot as plt

# 図のサイズとレイアウトの設定
plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True

# defで関数を定義
def f(x):
    return np.sin(x) + x + x * np.sin(x)

# -10〜10の範囲で100個の等間隔データ点を生成
x = np.linspace(-10, 10, 100)

# x と f(x) を赤色の線でプロット
plt.plot(x, f(x), color='red')

# 図を表示
plt.show()

コードのポイント解説

このサンプルコードの重要なポイントを以下にまとめます。

  • plt.rcParams: 図のサイズを幅7.50×高さ3.50インチに指定し、autolayoutを有効にすることでラベルやタイトルが図の外にはみ出すのを防ぎます。
  • def f(x): サイン波と直線的な項を組み合わせた関数です。x + x * np.sin(x) の部分により、振幅がxに応じて変化する波形になります。
  • np.linspace(-10, 10, 100): -10から10までの範囲を100個の等間隔の点に分割して配列を作成します。点数を増やすほど滑らかな曲線になります。
  • plt.plot(x, f(x), color='red'): x座標とそれに対応するf(x)の値を渡すことで、関数のグラフが描画されます。

実行結果

上記のコードを実行すると、赤色の曲線としてf(x)のグラフが描画され、ウィンドウに表示されます。

【Python入門】defで定義した関数をMatplotlibでプロットする方法

まとめ

NumPyでデータ点を生成し、plt.plot()に関数の戻り値を渡すだけで、defで定義した任意の関数を簡単に可視化できます。sin関数以外にも、独自の数式や条件分岐を含む関数にも同じ手法が使えるので、ぜひいろいろな関数で試してみてください。

  1. Matplotlibのラベルに改行を入れる方法|Pythonサンプルコード付きで解説

    本記事では、PythonのMatplotlibを使って、グラフの軸ラベルに改行を挿入する方法を解説します。「\n」を活用することで、X軸やY軸のラベルを複数行に分けて見やすく表示できます。 実装手順 「\n」を使用して、X軸・Y軸それぞれのラベルに改行を含めたテキストを設定します。 plt.rc()メソッドで現在のrcParamsを設定し、axesグループに対してプロパティサイクルを適用します。 cyclerを使って、線の色のグループを設定します。色のリストは「r」(赤)、「g」(緑)、「b」(青)、「y」(黄)で構成されます。 Cyclerクラスは、単一の位置引数、2つの位置引数のペア、ま

  2. Python Matplotlibで円グラフの一部を強調表示して描画する方法

    はじめに あなたが最も好きなグラフの種類は何ですか?経営層やビジネスアナリストにこの質問をすると、即座に「円グラフ(パイチャート)!」と答えられるほど、円グラフは割合を視覚的に表現するための最も一般的な手法のひとつです。 この記事では、PythonのMatplotlibを使って基本的な円グラフを描く方法から、explodeパラメータで特定のセクターを強調表示するテクニック、さらにパーセンテージではなく実際の値をラベルとして表示するカスタム関数の実装まで、段階的に解説します。 基本的な円グラフの作成手順 ステップ1:Matplotlibのインストール まず、以下のコマンドでMatplotlibを