English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

R 図形 関数曲線図

関数の曲線図は、関数を研究する重要なツールです。

Rのcurve()関数は、関数のグラフを描画できます。コード形式は以下の通りです:

curve(expr, from = NULL, to = NULL, n = 101, add = FALSE,
      type = "l", xname = "x", xlab = xname, ylab = NULL,
      log = NULL, xlim = NULL, …)
# S3 関数のメソッド
plot(x, y = 0, to = 1, from = y, xlim = NULL, ylab = NULL, …)

注:R言語のクラスにはS3 クラスとS4 クラス、S3 クラスは比較的広く使用されており、シンプルで粗雑ですが柔軟で、S4 クラスは比較的細かいです。

パラメータ:

  • expr:関数の表現式です。

  • fromとto:描画の開始と終了範囲です。

  • n:整数値で、xの値を取る数量を示します。

  • add:論理値で、TRUEの場合、既存の図に描画を追加します。

  • type:描画のタイプで、pは点、lは線、oは点と線を同時に描画し、線は点を通過します。

  • xname:x軸変数の名前を指定します。

  • xlimとylimはx軸とy軸の範囲を示します。

  • xlab、ylab:x軸とy軸のラベル名です。

plot関数では、xとyは描画される図形の横軸と縦軸をそれぞれ表します。

以下私たちは sin(x) 函数のグラフを描画します:

curve(sin(x), -2 * pi, 2 * pi)

注意:どんなコンピュータ図形ツールでも描画されるのはパターン図であり、実際の関数図形と完全に一致することはありません。一定の距離ごとに点を取ってその「高さ」を計算し、それを描画します。曲線の連続性を確保するために、隣接する点の間に直線で結びつけますので、tan(x) などの場合、誤差が発生することがあります:

それぞれの (2n+1)Pi / 2 の位置に断点が発生しますが、R の図形はそれらを結びつけます。この点を理解していただければ幸いです。

もちろん、sin などのようにベクトル処理をサポートするすべての関数ではないです。手動で数字シーケンスを生成し、plot 関数を使用して関数図形を生成することもできます。仮に関数 f が単一の数値として引数をサポートする場合:

# 関数 f の定義
f = function (x) {
    if (x >= 0) {
        x
    } else {
        x ^ 2
    }
}
# 自变量シーケンスの生成
x = seq(-2, 2, length=100)
# 因变量シーケンスの生成
y = rep(0, length(x))
j = 1
for (i in x) {
    y[j] = f(i)
    j = j + 1
}
# 図形の描画
plot(x, y, type='l')

次に、plot() 関数を使用してベクトルデータを図形に描画します:

# ベクトルデータ
v <- c(7,12,28,3,41)
# 画像の生成
png(file = "line_chart_label_colored.jpg")
# 図形、線図の色は赤で、main パラメータはタイトルの設定に使用されます
plot(v,type = "o", col = "red", xlab = "Month", ylab = "Rain fall",
   main = "Rain fall chart")