我在壁炉上绘制了一张图图,用:
plot(x,y)
我的图表有不同的斜坡, 我如何在每一个斜坡上绘制正切点, 并计算斜坡的系数?
我在壁炉上绘制了一张图图,用:
plot(x,y)
我的图表有不同的斜坡, 我如何在每一个斜坡上绘制正切点, 并计算斜坡的系数?
如果您没有为绘图点设定明确的函数, 您可以使用 < a href=" http:// en.wikipedia.org/wiki/Finite_ difference" rel=“ nofollow” >unite difference 来估计衍生物。 以下是适合数据范围以外的点 :
plot(x,y);
hold all;
% first sort the points, so x is monotonically rising
[x, sortidx] = sort(x);
y = y(sortidx);
% this is the x point for which you want to compute the slope
xslope = (x(1)+x(end))/2;
idx_a = find(x<xslope,1, last );
idx_b = find(x>xslope,1, first );
% or even simpler:
idx_b = idx_a+1;
% this assumes min(x)<xslope<max(x)
xa = x(idx_a);
xb = x(idx_b);
slope = (y(idx_b) - y(idx_a))/(xb - xa);
现在绘制这个斜坡, 取决于你想要什么: 短线 :
yslope = interp1(x,y,xslope);
ya_sloped = yslope + (xa-xslope)*slope;
yb_sloped = yslope + (xb-xslope)*slope;
line([xa;xb],[ya_sloped;yb_sloped]);
或长线线
yslope = interp1(x,y,xslope);
xa = xa + 4*(xa-xslope);
xb = xb + 4*(xb-xslope);
ya_sloped = yslope + (xa-xslope)*slope;
yb_sloped = yslope + (xb-xslope)*slope;
line([xa;xb],[ya_sloped;yb_sloped]);
我敢肯定,在这个代码里没有虫子, 但我会测试出来,当我周围有木板的时候;)
您将需要在任何您有兴趣使用的点( y2-y1) / (x2- x1) 找到斜度, 然后用绘图() 绘制一条有该斜度的直线。 要绘制这条线, 您需要 y 拦截, 并且因为您知道该线上至少一个点的坐标( 这是您想要绘制正切点), 您可以在 y=mx+b 中为 b 解析 。
I have a data file m.txt that looks something like this (with a lot more points): 286.842995 3.444398 3.707202 338.227797 3.597597 283.740414 3.514729 3.512116 3.744235 3.365461 3.384880 Some of the ...
I want to solve these equations using MATLAB and I am sure there is a non zero solution. The equations are: 0.7071*x + 0.7071*z = x -0.5*x + 0.7071*y + 0.5*z = y -0.5*x - 0.7071*y +...
How do you read the following MATLAB codes? #1 K>> [p,d]=eig(A) // Not sure about the syntax. p = 0.5257 -0.8507 -0.8507 -0.5257 d = ...
Is there a way to transfer ownership of the data contained in a std::vector (pointed to by, say T*data) into another construct, preventing having "data" become a dangling pointer after the vector goes ...
I want to divide p(x) by q(x) given that: p(x)=-5x^4+3x^2-6x q(x)=x^2+1 I tried: p=inline( -5*(x^4)+3*(x^2) , x ) p = Inline function: p(x) = -5*(x^4)+3*(x^2) q=inline( x^2+1 , x ) q = ...
The Fibonacci series is given as follows: 1, 2, 3, 5, 8, 13, 21, ... How can I write a script which calculates and prints the n-th Fibonacci term (for n>2), where n is inputed by the user. This ...
I have a vector containing some points in 2-D space. I want MATLAB to plot these points with lines drawn from every point to every other point. Basically, I want a graph with all vertices connected. ...
I have a loop like this: for i=1:no %some calculations fid = fopen( c:\out.txt , wt ); %write something to the file fclose(fid); end I want data to be written to different files like ...