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

Визуализация в R: Кривая функции

График функции - важный инструмент для исследования функции.

Функция curve() в R может рисовать график функции, формат кода如下:

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)

Внимание: Любой инструмент визуализации computes только модели, и он не гарантирует, что он будет точно таким же, как真正的 график функции. Он просто берет точки через определенное расстояние, вычисляет "высоту" этой точки и рисует её. Чтобы обеспечить непрерывность кривой, между相邻ными точками будет проведена прямая линия, поэтому в некоторых случаях, например tan(x), могут возникнуть ошибки:}

В каждой позиции (2n+1)Pi / 2会出现断点,но графики R их соединяют, пожалуйста, поймите это.

Конечно, не все функции поддерживают векторную обработку, как sin, и мы можем вручную создать числовую последовательность, чтобы использовать функцию plot для визуализации функции. Предположим, что функция f поддерживает только одно числовое значение в качестве параметра:

# Определение функции f
f = function(x) {
    if (x >= 0) {
        x
    }
        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 = "Месяц", ylab = "Осадки",
   main = "Диаграмма осадков")