用matlab如何做一个变量关于另一个变量的曲线

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用matlab如何做一个变量关于另一个变量的曲线相关的知识,希望对你有一定的参考价值。

我想用matlab画一个函数的曲线图,v=(π/4)*(r/R)^2, v是r和R的函数,
其中r和R都是自变量。做的图要求以(2R-2r)/r为横坐标,以v的值为纵坐标。得到的图像应该类似于一条双曲线。拜托高手能指导一下。
其中 R大于等于r

令r/R=x;做的图要求以(2R-2r)/r为横坐标,以v的值为纵坐标
即横坐标 2(1/x-1)
x=0.1:0.01:0.9;
v=pi/4*x.^2;

xx=2*(1./x-1);
plot(xx,v)追问

请问您能完整地写一下吗,有些地方我不太会

追答

什么地方不会
我已经说得很明白了啊
令r/R=x;
(2R-2r)/r=2(R/r-r/r)=2(1/x-1)

横坐标 2(1/x-1)

v的值为纵坐标 v=(π/4)*(r/R)^2=(π/4)*(x)^2,

追问

就是那个横坐标的口令不知道怎么写,怎么把2(1/x-1)作为横坐标的
。。我好像明白了,问得有点蠢。。谢谢^^

参考技术A 看一下matlab自带的关于plot的帮助。

如何用MATLAB做双纵坐标图?其中一条是折线图,另一个是柱形图,还有我想做多子图的

如何用MATLAB做双纵坐标图?其中一边是折线图,另一个是柱形图,还有我想做多子图的

把这两个子图放到一个大图里面 谢谢了

看上去这个图好像是用Excel做的。

用MATLAB做当然也可以实现,但在一些细节上会有一定差异,要实现和图中完全相同的效果比较困难。

多子图用subplot函数就可以了,不多说。

绘制双纵坐标图用plotyy函数,如果图的形式不同,可以用下面的方式

plotyy(X1,Y1,X2,Y2,'function1','function2')

指定绘图的函数,例如

plotyy(1:10,sin(1:10),1:10,sin((1:10)*0.3),@plot,@bar)

而线型、线宽、颜色以及坐标轴的YTickLabel等需要调用plotyy时返回句柄,然后再用set去设置了。

参考技术A x=readtable('练习数据.xlsx','sheet','设备价值');
bar(x.value)
ax=gca;
ax.YLim=[0 140000];
ax.YTick=[0:10000:280000];
ax.YTickLabel=[0:10000:140000];
ax.XTickLabel=x.name;
ax.XLabel.String='项目';
ax.YLabel.String='金额 ';
ax.Title.String='设备金额';
hold on
scatter(ax.XTick,x.value);
plot(ax.XTick,x.value);
参考技术B yyaxis right;
plot();
yyaxis left;
plot();

以上是关于用matlab如何做一个变量关于另一个变量的曲线的主要内容,如果未能解决你的问题,请参考以下文章

如何用MATLAB做双纵坐标图?其中一条是折线图,另一个是柱形图,还有我想做多子图的

matlab曲线拟合后如何给出得到的各个参数的标准差

在matlab中如何根据拟合图得到函数?

matlab中如何求图像特征值曲线图

Matlab正弦曲线拟合

用加权最小二乘法拟合曲线matlab?