Заполнить ограниченную область под кривой - PullRequest
2 голосов
/ 26 октября 2011

Скажите, у меня есть сюжет в Matlab:

x=-10:0.1:10;
plot(normpdf(x, 0, 3));

Я хотел бы заполнить область под кривой от -4 < x < 4. Аналогичный вопрос: если я, например, хотел заполнить область слева от кривой от 0.04 < y < 0.1?

Ответы [ 2 ]

3 голосов
/ 27 октября 2011

Ответ Aabaz отлично подходит для общего случая, но если вам конкретно нужно закрасить область под обычной кривой pdf, на самом деле в Statistics Toolbox есть функция, которая делает именно это: *

p = normspec([1-3/128,Inf],1,2/128,'outside')
p =
    0.0668

Normal PDF plot

2 голосов
/ 26 октября 2011

Проверьте функцию Matlab area, которая может помочь вам решить вашу конкретную проблему.

Например, заполнение области под normpdf для -4

x=(-10:0.1:10);
xs=x(x>-4 & x<4);
figure;
hold on;
area(xs,normpdf(xs,0,3));
plot(x,normpdf(x,0,3));

Для вашего второго примера, однако, я не знаю, сработает ли это, но, возможно, возможен обходной путь.

ОБНОВЛЕНИЕ : относительно вашего второго вопроса, я думаю, вы можете достичь этого с помощью функции Matlab fill. Я не тестировал его, но уверен, что он сработает, если у вас возникнут трудности с его реализацией, не стесняйтесь обращаться за помощью.

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