Re: [問題] 用mesh畫圖出不來已回收
※ 引述《iverson0303 (monkey)》之銘言:
: clear
: clc
: N5=0:500:5000;
: R = 0:0.1:1;
: N2=N5*0.1/0.03;
: N4=N2-N5;
: C21=(N4*0.995+N5*0.01)/N2;
: C22=0.97-C21;
: N6 = zeros(1,10000);
: N6 = R.*N5
: N1=(N2*C21-N6*0.01)/0.2
: N3=N1+N6-N2
: C32=(N1*0.25+N6*0.89-N2*C22)/N3
: C34=(N1*0.15)/N3
: C33=1-C34-C32
: A=[1 1;0.002 0.3]
: B=[N3;N3*C34]
: T=inv(A)*B
: N8=T(1,:)
: N9=T(2,:)
: C82=N3*C32/N8
: C83=1-0.002-C82
: N10=(N9*0.7)/0.98
: N11=N9-N10
: C41=0.995
: C103=0.98
: if R<= 0.5 & N1 <= 3000
: profit= (4*N2-15*N6).^2-70*(N1).^1.4
: elseif R >= 0.5 & N1 <= 3000
: profit= (10*N2-40*N6).^2-5*(N1).^0.5
: elseif R <= 0.5 & N1 > 3000
: profit= (0.5*N2-N6).^2 - 10*(N1).^1.3
: else R > 0.5 & N1 > 3000
: profit= (N2-10*N6).^2-(N1)
: [x,y,z] = meshgrid(N1,R,profit);
: mesh(x,y,z)
: end
: 執行的時候都會跑出這個
: ??? CData must be an M-by-N matrix or M-by-N-by-3 array.
: 想請問我已經把profit轉成矩陣了
: 可是還是不行
: 請問有什麼方法嗎 謝謝
法1(不建議):
[x,y] = meshgrid(N1,R);
z=griddata(N1,R,profit,x,y);%由(N1,R,profit)插值求(x,y,z)
mesh(x,y,z)
你原本做的點只有對角線上
所以插值出來會很多nan
法2(建議):
[x,y] = meshgrid(N1,R);
z直接if判斷求出x,y網格點對應的值
mesh(x,y,z)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 111.250.23.138
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):