Проблема функции кривой в точке разрыва - PullRequest
1 голос
/ 12 марта 2019

Я хочу нарисовать функцию g на интервале [-1,1], где g - функция, которая удовлетворяет:

для х <0 г (х) = х ^ 2 + 1 </p>

в противном случае g (x) = - 4x-4

Итак, я определил функцию (г):

g=function(x) ifelse(x<0, x^2+1, -4*x-4)

Когда я использую функцию graph(g,-1,1), я получаю график этой функции, а также вертикальную линию в прерывистой точке (x = 0).

Мой вопрос:

Почему я получаю эту строку и как я могу от нее избавиться?

1 Ответ

3 голосов
/ 12 марта 2019

Скачок по вертикальной линии вызван 0, когда x == 0 , вы получаете -4. Решением может быть возврат NA при x == 0.

Оригинальный код:

g <- function(x) ifelse(x<0, x^2+1, -4*x-4)
curve(g, -1, 1, main = "Original")

Удалить 0 (вернуть NA):

g_no0 <- function(x) ifelse(x == 0, NA, ifelse(x<0, x^2+1, -4*x-4))
curve(g_no0, -1, 1, main = "No 0")

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...