2016-10-19 2 views
0

하나의 변수에 따라 함수의 2D 플롯을 만드는 데 문제가 있습니다. 짧게 요약하자면 함수는 스칼라 값만 받아 들일 수 있습니다. 그것은 벡터를 받아들이지 않을 것입니다. 따라서 서로 다른 값 범위 인 vector에 대해 예를 들어 plot(vector, function(vector))을 사용할 수 없습니다. 나는 또한 루프를 사용하려했지만 내 지식은 제한되어 있으며 어떤 경우에도 작동하지 않았습니다. 스칼라 값을 사용한 플로팅. (벡터/행렬/배열 입력 인수는 코드에서 허용되지 않습니다.)

은 요약하면 : 나는 xfunction(x)을 플롯 할, 그러나 function는 스칼라 입력을 할 수 있습니다, 그래서 작동하지 않을 function에 대해 그것을 음모를 꾸미고 다음 x=-10:1:10을 복용합니다. 아무도 올바른 방향으로 나를 가리킬 수 있습니까?

+0

안녕하세요 @Adriaan - thr 답장을 보내 주셔서 감사합니다. 나는 그것을 이해하지만, 함수가 벡터를 받아들이지 않는다는 사실은 다른 방법으로는 사용할 수 없다는 것을 의미한다. 여기서 내가 묻는 것은 입력 값의 범위에 해당하는 모든 스칼라 출력을 플롯 할 수있는 또 다른 방법이 있다면 무엇입니까? '주변을 돌아 다니는'방법이 있을까요? – MrX

답변

-1
vector = -10:10 % set up your vector 
output = zeros(size(vector); % initialise the output 
for ii = 1:numel(vector)% loop over all elements of your vector 
    output(ii) = function(vector(ii)); % feed the function a single element at a time 
end 

plot(vector,output) % Now you can plot the two vectors