如何在 R 中绘制多元函数

How to plot multivariate function in R

我正在尝试绘制以下函数:

这是我目前尝试过的:

curve(7*x*y/( e^(x^2+y^2)))

但我收到以下错误:

你的e表示指数函数。在r中,指数函数代码为exp()。所以你可以修改这段代码。

curve(7*x*y/(exp(x^2+y^2)))

绘图的一种方法是使用 contour() 函数。此外,正如@Sang won kim 指出的那样,exp()e^(...)

的函数
x <- seq(from = 0.01, to = 2.1, by = 0.01)
y <- x

multi_var_fx <- function (x, y) {
  7 * x * y / (exp(x^2 + y^2))
}

z <- outer(x, y, multi_var_fx)

contour(x, y, z, xlab = 'x', ylab = 'y')

reprex package (v0.3.0)

于 2019-10-27 创建

您可以像这样创建等高线图:

library(tidyverse)

tibble(x = seq(0, 10, 0.1),             # define the drawing grid
       y = seq(0, 10, 0.1)
  ) %>% 
cross_df() %>%                          # create all possible combinations of x and y
mutate(z = 7*x*y/(exp(x^2+y^2)) ) %>%   # add your function
ggplot(aes(x = x, y = y, z = z)) +      # create the plot
  geom_contour()