请问楼主你画我猜题目大全中的图是怎么画出来的,matlab代码是什么?。

只需一步,快速开始
扫一扫,访问微社区
查看: 226|回复: 5|关注: 0
请问下图的函数怎么在MATLAB中做出它的函数图像,望不吝...
<h1 style="color:# 麦片财富积分
新手, 积分 7, 距离下一级还需 43 积分
各路好汉,各路大神,请问下图的函数怎么在MATLAB中做出它的函数图像,望不吝赐教,拜托拜托
MATLAB 基础讨论版块优秀回答者
<h1 style="color:#4 麦片财富积分
关注者: 9
|此回复为最佳答案
R = 1; Rho = 850; Mu = 8.7*10^(-3); Gamma = 0.03; cosTheta = 0.5;
syms h(t) g(t);%换元令g = h*dh/
gSol(t) = dsolve([pi * R^2 * Rho * diff(g,t) + 8 * pi * Mu * g == 2 * pi * R * Gamma * cosTheta],[t]);%解g
hSol(t) = dsolve([h * diff(h,t) == gSol],[t]);%解h
C1 = 0;% 设置解里面常数的数值
C2 = 0;
C3 = 0;
sol=@(t) subs(vpa(hSol(t)));
x = -1:0.1:1;%设置自变量的值域
plot(x,sol(x));复制代码
解里面包含常数,每组常数值都有不同的函数图形.
<h1 style="color:# 麦片财富积分
解里面包含常数,每组常数值都有不同的函数图形.
谢谢您的解答,但是我在运行上边代码时,为什么显示有错误呢??希望您能解答一下!
<h1 style="color:# 麦片财富积分
谢谢您的解答,但是我在运行上边代码时,为什么显示有错误呢??希望您能解答一下! ...
我的软件是09版的,会不会跟软件有关系的?
MATLAB 基础讨论版块优秀回答者
<h1 style="color:#4 麦片财富积分
关注者: 9
谢谢您的解答,但是我在运行上边代码时,为什么显示有错误呢??希望您能解答一下! ...
untitled.png (8.51 KB, 下载次数: 0)
11:09 上传
2015版本画出来的图
如果用旧版本就到mathworks网站上或者帮助手册里查一下是语法问题还是没对应函数.
<h1 style="color:# 麦片财富积分
2015版本画出来的图
如果用旧版本就到mathworks网站上或者帮助手册里查一下是语法问题还是没对应函数.
好的·,谢谢·!!
站长推荐 /3
筑起功能安全的堡垒 - 基于模型设计的软件开发
MATLAB中文论坛是全球最大的 MATLAB & Simulink 中文社区。用户免费注册会员后,即可下载代码,讨论问题,请教资深用户及结识书籍作者。立即注册加入我们吧!
MATLAB官方社交平台
MATLAB中文论坛微社区matlab中如何画导函数图像?其中x(2)-x(1)以及(1:
matlab中如何画导函数图像?其中x(2)-x(1)以及(1:y11=(-x).*sin(x);y12=(-x).*cos(x)-sin(x);y21=diff(y11)./(x(2)-x(1));y22=(y21-y12(1:n-1));将四个函数画在同一个图上~
matlab画导数就是先把区间分解为一小段一小段的,然后在每一个小段上计算这一段上(x1,f(x1))和(x2,f(x2))连线的斜率(x1,x2为区间端点),只要你分割足够细,画出来的就近似是导数.所以,以上命令里面x是一个向量,表示分割出来的每一段的端点的集合,x在画图之前要自己设定好,根据需要来,比如:x = [-10:0.01:10];就表示你是在区间[-10,10]上画函数的导数,且分割出来的每个端点间距是0.01.第一行就是在计算函数值组成的向量,(-x).这里的点是在做点对点运算,也就是对每个x计算x*sin(x)的数值,不加点matlab就不认识,以为是要做矩阵运算.算出来的y11也是向量,维度和x一样.第二行同理,注意到y12的形式恰好是y11的导数,称为解析形式;第三行里头,x(2)-x(1)就是x向量里第二个元素减去第一个元素,x(n)是用来提取元素的命令.diff(y11)是对y11这个向量进行差分,也就是y(1)-y(2),y(2)-y(3).然后组成一个新向量称为diff(y11),所以如果x是n维的,那么它就是n-1维的.加点还是表示点对点运算.不知道为何你要除以x(2)-x(1),应该是写diff(x)才对,这样才是在计算每一段上小线段的斜率;计算第四行的目的是要你比较数值计算的结果(就是y21)和你自己求导后得到的解析结果(y12)进行比较.如果y22近似是一个零向量,就表示数值计算的结果很精确误差很低.y21现在是一个n-1维向量,y12现在是一个n维向量,为了让他俩能够相减,所以需要提取y12这个向量的前n-1个元素,这就是命令(1:n-1)的意思.最后的画图命令是(必须保证同维度才可以画图):x=x(1:n-1);plot(x,y11(1:n-1),x,y12(1:n-1),x,y21,x,y22) 再问: 请问n应该怎么定义才有效呢?如果直接写就是未定义变量,运行不了,但是如果去确定值又与题目要求不和,怎么办? 再答: 题目要求到底是什么?你肯定得输入n是多少才可以的。你题目不就是要用matlab画导数图象吗,没有n怎么画?别管那么多你就输入一个n好了。再问: 有错误!帮忙看一下,谢谢~ 再答: 你的n必须是向量x里头元素的个数相等的,你得修改第五行为: n=length(x); 我最后给你插入一个小命令让你方便看图。你先把最后一行删掉不要运行,其他行不变,然后运行下面的: y11=y11(1:n-1);y12=y12(1:n-1); plot(x,y11,x,y12,x,y21,x,y22) hleg1 = legend('y11','y12','y21','y22'); 就好了,画出来的图还是一样,只不过加了图例。
我有更好的回答:
剩余:2000字
与《matlab中如何画导函数图像?其中x(2)-x(1)以及(1:》相关的作业问题
x设置范围和采样点,如x=-5:0.01:5;y=exp(-((x-20)/7).^2);plot(x,y)就行了,看看help里面的,这是最基本的
法一:>> sphere>> axis square法二:参数方程来画clcclear% by friendchjr=1;%半径x0=2;%中心y0=2;z0=2;theta=(0:0.1:2)*phi=(0:0.1:2)*x=zeros(length(theta),length(phi));y=x;z=x
一条命令就可以: fplot('x^(1/3)',[-1 1])[-1 1]是你所绘图形X的范围,可以随意改.
数组分段设置数据,然后把数组画出来
t=0:19;x=0:0.01:1;f=@(x,n)2*x+n;for ii=1:20plot(x+t(ii),f(x+t(ii),ii));
pi = 3.14;A = 0:0.1:6*B= cos(A)plot(A,B)
w是符号函数,用ezplot函数画图,不应用plot,请看一下ezplot的帮助文件. 再问: 也试过的没用 再答: 抱歉,现在才看到你的追问。用ezplot应该可以的。我的可以正常运行。T=80*10^(-6);nsl=500;wc=2*pi*nsl*T;%Wc=2/T*tan(wc/2);sign
参考代码[x,&y]&=&meshgrid(&linspace(-1.5,1.5)&);z&=&exp(x+2*y-1)&.*&(x+y&1)&+&exp(x.^2+y.^2)&.*&
法一:&& sphere && axis square 法二:参数方程来画 clc clear % by friendchj r=1;%半径 x0=2;%中心 y0=2; z0=2; theta=(0:0.1:2)
k=0:10;p=10.^k./(factorial(k));plot(k,p,'o');
ezplot('x-r*sin(x)',[0,5,-3,3])
x=(0:99)/100;y=exp(2*x);&plot(x,y) 再问: 我想让y轴从0开始怎么办? 再答: axis([0,1,0,10])再问: 我还有一些离散的点的x坐标,对应上面的函数可以求出y值,要怎样将这些离散的点和上边的函数画在同一个坐标系中呢?谢谢。像这样的:比如X的坐标:x0 =&nbs
A=1;w=2;ezplot(A*cos(w*t),-A*w*sin(w*t),[-1 100])%ezplot的第三个参数是t的范围 再问: 谢谢,但是A,w不能假设为为1,2,要把它们当做固定的数但同时又是要用字母表示A,w,那该怎么办呢? 再答: 绘图需要确切值的,一定要给值
如果已经画好的三维图像已经显示在单独的Figure窗口中,按下窗口工具栏的Rotate 3D按钮,在窗口内部右键,选择菜单中的'X-Y View'就能看到XY平面的剖面图.
ezplot('3*x^2+5*y^2+x*y+3*x+4*y=2')这是画隐函数图像的最简单的方法.
你刚才问我画实线的问题怎么不见呢,你看能不能找到.从这里我才知道是怎么回事,由于T是常数,直接plot(s,T)就是会出现点划线.可以这样做.求交点程序已一并附上.hold&onT=144.09;s=0.001:0.01:1;tn=518.72./(s./0.3./s);plot(s,tn
只有n和x,咋画二维图?画个平面图还行.&x0=1;%设置初始值,x(1)=1x=x0*ones(1,100);%生成x(n)初始数组for n=1:99x(n+1)=-0.01*x(n)+x(n).^2;endplot(x);&
是的,如果是灰度图的话,如果是彩色图,则矩阵是3维矩阵,存储的是每个像素的r,g,b的值
I=imread(' ');I=im2double(I);I=imnoise(I,'salt & pepper');imshow(I); 再问: 谢谢啦,但还有个问题如: I=imread(' '); I=double(I); I=imnoise(I..); 为什么这样不行呢? 再答: I=imread(' ');这个[MATLAB图像处理] 请问如何在三维图像上画出这些虚线? - MATLAB中国论坛|MATLAB爱好者之家—不仅仅是MATLAB!
MATLAB论坛 一切MATLAB相关问题在此讨论,发帖时必须选择相应主题前缀:MATLAB基础,MATLAB混合编程,MATLAB数学问题,MATLAB工具箱,MATLAB图像处理,MATLAB GUI,MATLAB毕业设计,Simulink相关等。
感谢他人: 0
有 0 帖获得 0 感谢
请问如何在三维图像上画出这些虚线?
请问图中绿色的虚线是怎么画出来的?有什么命令可以直接画出来么?
上传的图像
(33.7 KB, 3 次查看)
您不可以发表新主题
您可以发表回复
您不可以上传附件
您不可以编辑自己的帖子
论坛禁用 HTML 代码 are 禁用
所有时间均为北京时间。现在的时间是 。
Powered by vBulletin版权所有 &2000 - 2018,Jelsoft Enterprises Ltd.
SEO by vBSEO &2009, Crawlability, Inc.

我要回帖

更多关于 2018美赛题目出来了 的文章

 

随机推荐