精华内容
下载资源
问答
  • 隐函数绘图
    千次阅读
    2018-12-08 00:21:18

    背景介绍
    Matlab提供了一系列绘图函数,常见的包括绘制2D曲线的plot函数、绘制2D隐函数曲线的ezplot函数、绘制3D曲面的mesh和surf函数、绘制3D显函数曲面的ezmesh和ezsurf函数。值得注意的是,ez系列的绘图函数里只有ezplot是绘制隐函数曲线的,ezmesh和ezsurf都是画显函数曲面的(不要被ez的名字误解了)。遗憾的是,matlab里并没有提供直接绘制3D隐函数曲面的函数。本帖的目的就是归纳总结几种方便易用的绘制隐函数曲面的办法。
     

    问题描述

    如何绘制3元方程f(x, y,z) = 0确立的隐函数曲面z = g(x,y)?其中,方程f(x, y,z) = 0无法求解z关于x、y的表达式,即g(x, y)的显式表达式无法获取。
     

    准备工作——基础函数介绍

    为了解决上述问题,我们需要先对几个重要的图形函数isosurface、patch、isonormals取得初步的了解,如果您已经对这三个函数很熟悉,可以直接跳过这一步。 
     

    l.  isosurface 等值面函数

    调用格式:fv = isosurface(X,Y,Z,V,isovalue)

    作用:返回某个等值面(由isovalue指定)的表面(faces)和顶点(vertices)数据,存放在结构体fv中(fv由vertices、faces两个域构成)。如果是画隐函数 v = f(x,y,z) = 0 的三维图形,那么等值面的数值为isovalue = 0。
     

    2.  patch函数

    调用格式:patch(X,Y,C) 以平面坐标(X, Y)为顶点,构造平面多边形,C是RGB颜色向量

                        patch(X,Y,Z,C)以空间3-D坐标(X, Y,Z)为顶点,构造空间3D曲面,C是RGB颜色向量

                        patch(fv) 通过包含vertices、faces两个域的结构体fv来构造3D曲面,fv可以直接由等值面函数isosurface得到
    例如:patch(isosurface(X,Y,Z,V,0))
     

    3.  isonormals等值面法线函数

    调用格式:isonormals(X,Y,Z,V,p)

    实现功能:计算等值面V的顶点法线,将patch曲面p的法线设置为计算得到的法线(p是patch返回得到的句柄)。如果不设置法线的话,得到曲面在过渡地带看起来可能不是很光滑

     

    有了上述三个函数后,我们已经具备间接绘制3D隐函数曲面的能力了。下面以方程
    f(x,y, z) = x.*y.*z.*log(1+x.^2+y.^2+z.^2)-10 = 0为例,讲解如何画3D隐函数曲面。

     

    解决办法一:isosurface + patch+ isonormals

    实现原理:先定义3元显函数v =f(x, y, z), 则 v = 0 定义的等值面就是z = g(x,y)的3D曲面。利用isosurface函数获取v= 0 的等值面,将得到的等值面直接输入给patch函数,得出patch句柄p,并画出patch曲面的平面视角图形。对p用isonormals函数设置曲面顶点数据的法线,最后设置颜色、亮度、3D视角,得到3D曲面。
     

    代码如下:

    1. f = @(x,y,z) x.*y.*z.*log(1+x.^2+y.^2+z.^2)-10;      % 函数表达式
    2. [x,y,z] = meshgrid(-10:.2:10,-10:.2:10,-10:.2:10);       % 画图范围
    3. v = f(x,y,z);
    4. h = patch(isosurface(x,y,z,v,0)); 
    5. isonormals(x,y,z,v,h)              
    6. set(h,'FaceColor','r','EdgeColor','none');
    7. xlabel('x');ylabel('y');zlabel('z'); 
    8. alpha(1)   
    9. grid on; view([1,1,1]); axis equal; camlight; lighting gouraud
    10.  

    复制代码


    代码说明:

    • alpha函数用于设置patch曲面的透明度(可以是0~1任意数值),1 表示不透明,0 表示最大透明度。如果想设置透明度为0.7,可以修改alpha(1)为alpha(0.7)。
    • 使用此代码解决特定问题时,只需将第1行的函数表达式替换为特定问题的函数表达式,将第2行数据(x、y、z)范围换成合适的范围,后续代码无需任何变动。


    得到图形:

    1.png 
    登录/注册后可看大图

     

    解决办法二:Mupad

    Mupad符号引擎里提供了现成的三维隐函数画图函数:Implicit3d

    在matlab里开启Mupad的方法是:在commandwindow 里输入mupad 来启动一个notebook。在启动的notebook里再输入如下代码:

    1. plot(plot::Implicit3d(x*y*z*ln(1+x^2+y^2+z^2)-10,
    2. x = -10..10, y = -10..10, z = -10..10), Scaling = Constrained)

    复制代码

    回车后得到如下图形:
     

    1.png 
    登录/注册后可看大图



    解决办法三:第三方工具包ezimplot3

    在matlab central 的 file exchange 上有一个非常优秀的绘制3维隐函数的绘图函数,叫ezimplot3。感兴趣的可以在如下链接下载:

    http://www.mathworks.com/matlabcentral/fileexchange/23623-ezimplot3-implicit-3d-functions-plotter

    也可以直接从本帖下载:  ezimplot3.zip (3.71 KB, 下载次数: 25521) 
     

    ezimplot3一共有三种参数调用方式:

    • ezimplot3(f) 画函数f(X,Y,Z)= 0 在-2*pi< X < 2* pi, -2* pi < Y < 2* pi, -2* pi < Z < 2* pi上的图形
    • ezimplot3(f, [A,B])画函数f(X,Y,Z)= 0 在A< X < B, A < Y < B, A < Z < B上的图形
    • ezimplot3(f, [XMIN,XMAX,YMIN,YMAX,ZMIN,ZMAX])画函数f(X,Y,Z)= 0 在XMIN< X < XMAX, YMIN < Y < YMAX, ZMIN < Z < ZMAX上的图形
       

    ezimplot3使用方法:解压ezimplot3.zip,将解压得到的ezimplot3.m 添加到matlab当前搜索路径后就可以使用了。然后,可以直接在command window 输入代码:

    1. f = @(x,y,z) x*y*z*log(1+x^2+y^2+z^2)-10;
    2. ezimplot3(f,[-10,10]);  % [-10, 10] 表示图形范围x、y、z都在区间[-10, 10]
    3.  

    复制代码

    即得到如下图形:

    1.png 
    登录/注册后可看大图


    若干说明:

    • ezimplot3和方法一本质上完全相同。即ezimplot3实际上也是基于isosurface+ patch + isonormals的实现
    • ezimplot3与方法一的图形视觉效果相同,唯一的区别是,ezimplot3的使用了0.7的透明度:alpha(0.7)
    • ezimplot3在方法一基础上增加了一些外包功能,如:允许函数句柄f是非向量化的函数(即函数定义无需.*  ./  .^),这在ezimplot3内部会自动调用vectorize实现函数向量化。另外,ezimplot3可以在调用的时候方便的设定坐标范围。

     

     

    常见问题和解决办法:
     

    • 常见问题:很多人在使用以上方法后,经常出现的问题是代码没有任何错误,程序可以运行,就是出来的图形只有一个空坐标轴,看不到图形。
    • 问题分析:出现这种问题的原因是图形的显示区域没设对。比如,我们上述三种方法都是在x为-10到10的范围内,如果你设的范围内本身就没有图形,那当然就看不到图形了。
    • 解决办法:把图形显示范围重新设置对即可,如果不知道图形的大致范围,就手工多改几次,直到看到图形为止

     

    • 方法一,图形范围是在第2句的meshgrid函数决定的,meshgrid里给出的x、y、z范围就是最终画图范围,修改meshgrid语句即可。
    • 方法二(Mupad),x =-10..10, y = -10..10, z = -10..10是表示显示范围,修改这里即可。
    • 方法三,用ezimplot3(f,[A, B]) ezimplot3(f, [XMIN,XMAX,YMIN,YMAX,ZMIN,ZMAX])两种方式控制图形显示范围。


     

    后记:slice切片函数
     

    matlab还提供一种画切片图形的函数slice,slice做出的图是在切片上用颜色表示v的值。有时,我们画切片图形也有助于我们理解一个4维图形。以  v= f(x,y,z) = x*y*z*exp(-(x^2+y^2+z^2))  为例,假设我们希望看 v =f(x,y,z) 在 x =0, y = 1, z = 1 这些平面切片的图形,我们可以用以下代码:

    1. [x,y,z] = meshgrid(linspace(-2,2));
    2. v = x.*y.*z.*exp(-(x.^2+y.^2+z.^2));
    3. xslice = 0; yslice = 1; zslice = 1;
    4. slice(x,y,z,v,xslice,yslice,zslice)
    5. xlabel('x'); ylabel('y'); zlabel('z');
    6. colormap hsv 
    7.  

    复制代码

    得到图形为:
     

    1.png 
    登录/注册后可看大图


    经常听有人说想画 “4D图形”,前3维数据[x,y,z]表示空间位置,第4维数据v表示颜色(温度等),这类图形可以方便地通过slice切片实现: slice(x,y,z,v,xslice,yslice,zslice),这里就是在指定的切片上在空间坐标[x,y,z]处,用v值指定颜色画图。关于这类 “4D图形”的画法的一个典型例子:http://www.ilovematlab.cn/thread-265517-1-1.html

    另外,我在 23 楼提供了一个slice 函数应用的生动例子:slice 3D 动画图形。感兴趣的朋友可以看看

    更多相关内容
  • 隐函数作图

    2013-03-04 12:44:32
    隐函数作图器,可以制作课件,可以编辑试卷,很小巧的软件
  • ​ 如果给定了函数的显示式,可以先设置自变量向量,然后根据表达式计算出函数向量,从而用plot等函数绘制出图形,但如果函数用隐函数形式给出,则很难用上诉方法绘制图形。 ​

    如果给定了函数的显示式,可以先设置自变量向量,然后根据表达式计算出函数向量,从而用plot等函数绘制出图形,但如果函数用隐函数形式给出,则很难用上诉方法绘制图形。

    使用隐函数作二维图 

    绘图函数:ezplot

    (1)f=f(x)形式

    f可以是函数文件名或函数表达式组成的字符串,也可以是一个匿名函数表达式或函数名
    调用格式:

    ①ezplot(f):在默认区间-2π<x<2π绘制f = f(x)的图形。

    ②ezplot(f, [a,b]):在区间a<x<b绘制f = f(x)的图形。

    clc;
    clear all;
    close all;
    subplot(3,1,1);
    ezplot('cos(tan(pi*x))') ;		%f=f(x)   2π<x<2π
    subplot(3,1,2);
    ezplot('cos(tan(pi*x))',[-5,5]) ;		%f=f(x)
    subplot(3,1,3);
    x = -5:pi/100:5;
    y=cos(tan(pi*x));
    plot(x,y)	%f=f(x)

    (2)f=f(x,y)形式

    f可以是函数文件名或函数表达式组成的字符串,也可以是一个匿名函数表达式或函数名
    调用格式:
    ①ezplot(f):在默认区间**-2π<x<2π-2π<y<2π**绘制f(x,y) = 0的图形。

    ②ezplot(f, [xmin,xmax,ymin,ymax]):在区间xmin<x<xmaxymin<y<ymax绘制f(x,y) = 0的图形。

    ③ezplot(f, [a,b]):在区间a<x<ba<y< b绘制f(x,y) = 0的图形。

    clc;
    clear all;
    close all;
    subplot(1,2,1);
    ezplot('x^2+y^2-4*pi^2');				%f=f(x,y)
    axis equal;
    subplot(1,2,2);
    ezplot('x^2+y^2-4*pi^2',[-10,10,-10,10]);				%f=f(x,y)
    axis equal;

    clc;
    clear all;
    close all;
    subplot(1,3,1);
    ezplot('x^2+y^2-4*pi^2');				%f=f(x,y) ①ezplot(f):在默认区间**-2π<x<2π和-2π<y<2π**绘制f(x,y) = 0的图形。
    axis equal;
    subplot(1,3,2);
    ezplot('x^2+y^2-4*pi^2',[-10,10,-10,10]);				
    axis equal;
    subplot(1,3,3);
    ezplot('x^2+y^2-4*pi^2',[-20,20]);				% ③ezplot(f, [a,b]):在区间a<x<b和a<y< b绘制f(x,y) = 0的图形。
    axis equal;

     

    (3)参数方程x=x(t),y=y(t)形式

    调用格式:
    ①ezplot(x,y):在默认区间0<t<2π绘制x=x(t)和y=y(t)的图形。

    ②ezplot(x,y, [tmin,tmax]):在区间tmin < t < tmax绘制x=x(t)和y=y(t)的图形。

    clc;
    clear all;
    close all;
    subplot(2,1,1);
    ezplot('4*cos(t)','4*sin(t)')%x=4*cos(t),y=4*sin(t) 的参数函数
    axis equal;
    subplot(2,1,2);
    ezplot('4*cos(t)','4*sin(t)',[0,pi]) %将上面的参数函数的参数范围限制在了0到π之间
    
    axis equal;
    
    
    

     利用句柄形式f=@(x,y)

    clc;
    clear all;
    close all;
    subplot(2,1,1);
    f=@(x,y) (x.^2+y.^2).^2-81*(x.^2-y.^2);
    fimplicit(f,[-10 10 -5 5])
    subplot(2,1,2);
    f1=@(x,y) (x.^4+2.*y.^4-81);
    fimplicit(f1,[-10 10 -5 5])

    使用隐函数作三维图

    1、ezmesh函数

    2、ezsurf函数

    clc;
    clear all;
    close all;
    syms x y
    f1=x.^4+2.*y.^4-81;
    f2=x.^2-y.^2-4;
    figure(1);
    ezplot(f1);
    figure(2);
    ezmesh(f1);
    figure(3);
    ezsurf(f1);

    ezmesh函数效果显示: 

     

     

    ezsurf函数效果显示:

     

    展开全文
  • Python隐函数作图

    千次阅读 2020-12-04 19:53:31
    在使用Python作图的过程中,碰到了几次需要隐函数作图的问题,目前我暂时只知道两种方法,一种是使用sympy库,另一种是使用matplotlib中等高线的方法,这里分别总结下。Sympy库隐函数作图Sympy库隐函数作图主要使用...

    在使用Python作图的过程中,碰到了几次需要隐函数作图的问题,目前我暂时只知道两种方法,一种是使用sympy库,另一种是使用matplotlib中等高线的方法,这里分别总结下。

    Sympy库隐函数作图

    Sympy库隐函数作图主要使用了plot_implicit函数以及parse_expr函数,首先来简单看下该plot_implicit函数的参数说明。

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11def plot_implicit(expr, x_var=None, y_var=None, **kwargs):

    """A plot function to plot implicit equations / inequalities.

    Arguments

    =========

    - ``expr`` : The equation / inequality that is to be plotted.

    - ``x_var`` (optional) : symbol to plot on x-axis or tuple giving symbol

    and range as ``(symbol, xmin, xmax)``

    - ``y_var`` (optional) : symbol to plot on y-axis or tuple giving symbol

    and range as ``(symbol, ymin, ymax)``

    主要参数是expr,x_var,y_var是对坐标轴设置一些属性,一般可以不使用,一些其他的功能可以参考官网

    parse_expr函数可以把一个式子解析为可以传入plot_implicit的参数,可以用来表达各种式子,具体的部分看后面的例子。

    首先来看下plot_implicit的例子

    1

    2

    3

    4from sympy import *

    from sympy.parsing.sympy_parser import parse_expr

    plot_implicit(parse_expr('x**2+y**2-5'))

    plot_implicit(parse_expr('x**2-y**2+5'))

    可以看到确实是我们熟悉的图像。现在考虑比较复杂的式子,比如我们需要

    $x^3+sin(y^2)+1=0$

    1plot_implicit(parse_expr('x**3+sin(y**2)+1'))

    Sympy库作隐函数图像还是比较方便的,但是有一个比较大的问题,我暂时没找把两个图像作在一张图中的方法,比如我们要画

    $x+y=0,x^2+y^2=5$的图像,好像没办法做到,这就比较头疼了,好在我最后发现matplotlib的等高线可以”曲线救国”。

    2020/4/21更新:感谢网友在评论区的提醒,现在找到可以将两个图像作在一张图的方法——增加Or函数即可:

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12from sympy import log, Eq, symbols,Or

    from sympy.plotting import plot_implicit

    l, g = symbols('l g')

    r = 1.1

    b = 2

    b0 = 1

    plot_implicit(Or(

    Eq(log(10 * r - r * l * b / (r + 1) - log(g) * b * r / (b0 * (r + 1)))

    + l * b / (r + 1) -r * b * log(g) / (b0 * (r + 1)) - log(10 * r),0),

    Eq(log(9 * r - r * l * b / (r + 1) - log(g) * b * r / (b0 * (r + 1)))

    + l * b / (r + 1) -r * b * log(g) / (b0 * (r + 1)) - log(9 * r),0)

    ), (l, 0, 10), (g, 0, 30))

    Matplotlib利用等高线给隐函数作图

    首先来看等高线怎么作图

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20import matplotlib.pyplot as plt

    import numpy as np

    #构造等高线函数

    def f(x,y):

    return x**2+y**2-5

    #定义点的数量

    n=500

    #作点

    x=np.linspace(-3,3,500)

    y=np.linspace(-3,3,500)

    #构造网格

    X,Y=np.meshgrid(x,y)

    #绘制等高线,8表示等高线数量加1

    plt.contour(X,Y,f(X,Y),8)

    plt.show()

    可以看到这一个圈表示的就是等高线,看到这个的时候,我想到如果把这个参数8设为0,

    不就只表示一条曲线了,于是尝试了一下,果然如此。

    1

    2plt.contour(X,Y,f(X,Y),0)

    plt.show()

    所以可以利用这点来对等高线作图,此外,我们可以把这个图像和普通的图像坐在一张图里,

    这点就比Sympy更方便了。

    1

    2

    3plt.contour(X,Y,f(X,Y),0)

    plt.plot(x,y)

    plt.show()

    总结

    结合之前的讨论,以后对隐函数作图使用matplotlib更方便,流程如下

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18#构造等高线函数

    def f(x,y):

    #定义点的数量

    n=500

    #作点

    x=np.linspace(-3,3,500)

    y=np.linspace(-3,3,500)

    #构造网格

    X,Y=np.meshgrid(x,y)

    #绘制图像

    plt.contour(X,Y,f(X,Y),0)

    #作其他图像

    plt.plot(x,y)

    plt.show()

    展开全文
  • MATLAB—隐函数绘图

    万次阅读 多人点赞 2020-07-20 10:36:00
    MATLAB—隐函数绘图 如果给定了函数的显示式,可以先设置自变量向量,然后根据表达式计算出函数向量,从而用plot等函数绘制出图形,但如果函数用隐函数形式给出,则很难用上诉方法绘制图形。 目录MATLAB—隐函数绘图...

    MATLAB—隐函数绘图

    如果给定了函数的显示式,可以先设置自变量向量,然后根据表达式计算出函数向量,从而用plot等函数绘制出图形,但如果函数用隐函数形式给出,则很难用上诉方法绘制图形。

    绘图函数:ezplot

    (1)f=f(x)形式

    f可以是函数文件名或函数表达式组成的字符串,也可以是一个匿名函数表达式或函数名
    调用格式:
    ①ezplot(f):在默认区间-2π<x<2π绘制f = f(x)的图形。
    例:

    subplot(2,2,3);
    ezplot('cos(tan(pi*x))') 		%f=f(x)
    

    输出结果

    在这里插入图片描述

    ②ezplot(f, [a,b]):在区间a<x<b绘制f = f(x)的图形。
    例:

    subplot(2,2,3);
    ezplot('cos(tan(pi*x))',[ 0,1]) 			%f=f(x)
    

    输出结果
    在这里插入图片描述

    (2)f=f(x,y)形式

    f可以是函数文件名或函数表达式组成的字符串,也可以是一个匿名函数表达式或函数名
    调用格式:
    ①ezplot(f):在默认区间**-2π<x<2π-2π<y<2π**绘制f(x,y) = 0的图形。
    例:

    subplot(2,2,3);
    ezplot('x^2+y^2-9');				%f=f(x,y)
    axis equal;
    

    输出结果
    在这里插入图片描述
    ②ezplot(f, [xmin,xmax,ymin,ymax]):在区间xmin<x<xmaxymin<y<ymax绘制f(x,y) = 0的图形。
    例:

    subplot(2,2,3);
    ezplot('x^2+y^2-9',[-4,3,-4,5]);				 %f=f(x,y)
    axis equal;
    
    %此处将x和y的范围都限制在-4到4的区间,也可分开限制不同的区间
    

    输出结果
    在这里插入图片描述

    ③ezplot(f, [a,b]):在区间a<x<ba<y< b绘制f(x,y) = 0的图形。
    例:

    subplot(2,2,3);
    ezplot('x^2+y^2-9',[-3,3]);				 %f=f(x,y)
    axis equal;
    
    %此处将图像的x,y的范围都限制在了-3到3的区间
    

    输出结果
    在这里插入图片描述

    (3)参数方程x=x(t),y=y(t)形式

    调用格式:
    ①ezplot(x,y):在默认区间0<t<2π绘制x=x(t)和y=y(t)的图形。

    ezplot('5*cos(t)','4*sqrt(2)*sin(t)')
    
    %x=5*cos(t),y=4*sqrt(2)*sin(t) 的参数函数
    

    输出结果
    在这里插入图片描述

    ②ezplot(x,y, [tmin,tmax]):在区间tmin < t < tmax绘制x=x(t)和y=y(t)的图形。

    ezplot('5*cos(t)','4*sqrt(2)*sin(t)',[0,pi])
    
    %将上面的参数函数的参数范围限制在了0到π之间
    

    输出结果
    在这里插入图片描述

    展开全文
  • 【matlab笔记】二维/三维隐函数绘图

    千次阅读 2021-11-28 12:31:58
    ● 隐函数: 通常情况下我们使用的隐函数都是如:x²+y²=1 这样的形式,但在matlab中,隐函数用【函数句柄】定义时,必须把形式...%% 二维隐函数绘图 %% 1 f = @(x,y) x.^2 - y.^2 - 1; % 使用函数句柄定义函数 .
  • 论坛上很多作图都用如下方法(具体见论坛): 1.用 plt.contour 的0等高线 2.用sympy 这里介绍一种原创方法: import matplotlib.pyplot as plt import numpy as np eps=0.02 def f(x,y): return x**2-y**2-1 ...
  • 非常强大的3d真正的隐函数绘图程序。matlab中绘制复制精美的3d图形。
  • matlab隐函数作图

    2021-04-23 16:36:51
    第四章 MATLAB绘图二维数据曲线图 其他二维图形 隐函数绘图 三维图形 图形...第6章 MATLAB绘图 6.1 二维数据曲线图 6.2 其他二维图形 6.3 隐函数绘图 6.4 三维图形 6.5 图形修饰处理 6.6 图像处理与动画制作 6.1 二...
  • maple 隐函数作图

    2014-05-30 09:53:13
    电子书, maple软件关于隐函数画图方面的介绍
  • MATLAB中隐函数绘图方法探究.pdf
  • matlab隐函数绘图相关问题_matlab源码.rar
  • 【matlab】 隐函数作图函数 ezplot

    万次阅读 2017-01-17 22:09:19
    MATLAB之隐函数作图ezplot >> help ezplot ezplot - Easy-to-use function plotter 易于使用的函数绘图机  This MATLAB function plots the expression fun(x) over the default domain -2π 这个 MATLAB 函数...
  • 用mathematica画隐函数
  • 隐函数绘图函数。
  • [ img ] = drawImplicitFun( f,xRange,yRange,grid) 这是在 IMG 上绘制隐函数 F 的简单程序F 是一个带有两个变量的函数句柄IMG 是包含 F=0 绘图的二值图像。 例子: f = @(x,y)cos(x)+ cos(y)-cos(x。* y);...
  • Matlab隐函数与参数方程绘图

    千次阅读 2022-03-06 17:29:36
    Matlab隐函数与参数方程绘图
  • 【Mathematica】 隐函数的绘制

    千次阅读 2021-05-31 09:50:10
    作出下列隐函数的曲线: (1)x4+y4=16x^4+y^4=16x4+y4=16 (2)xy=exyxy=e^{xy}xy=exy 代码 nb 文件在我的 GitHub 项目 Teddy-van-Jerry/SEU_Mathematica 下载。 ContourPlot[x^4 + y^4 == 16, {x, -2, 2}, {y, -2,...
  • [Matlab]二维隐函数绘图

    千次阅读 2016-10-05 11:34:00
    MATLAB提供了一个ezplot函数绘制隐函数图形,有三种调用方式: 对于函数f=f(x),ezplot函数的调用格式为: ezplot(f):在默认区间-2pi<=x<=2pi内绘制f=f(x)的图形 ezplot(f,[a,b]):在区间a<=x<...
  • 数学上的一元函数可以分为显函数和隐函数两大类,显函数的优点是能够明显的看出来因变量和自变量之间的关系,也就是对应法则,但是隐函数往往无法看出对应法则,而且很多时候都不能轻松的转化为显函数。fimplicit...
  • 这是一个作直角坐标方程F(x,y,z)=0,球面坐标方程 F(r,u,v)=0,柱面坐标方程F(r,u,z)=0的隐函数的图象的好工具,使用vc+openGL开发,能用鼠标自由旋转 、缩放,双面着色,作图范围可球形剪切。
  • matlab绘制三维隐函数图像

    千次阅读 2022-05-20 22:59:02
    matlab中三维隐函数绘制函数:fimplicit3 520这个日子,我们就用matlab的三元隐函数绘图来绘制一个小爱心: 已知条件: 源代码: %绘制三元隐函数 f=@(x,y,z) (x.^2+(9/4)*(y.^2)+(z.^2)-1).^3-(x.^2)*(z.^3)-(9/80)...
  • figure a=2.65922135556252; b=0.0967946378409498; L=0.362370708149407; M=0.406498103256099; N=0.477240754673095; P=0.391969687065092; Q=0.693829957300887; R=0.891148304105125;...[x,y,z] = meshgrid(-2:0.05...
  • MATLAB绘制3D隐函数曲面的几种方法

    千次阅读 2021-04-18 09:06:56
    背景介绍Matlab提供了一系列绘图函数,常见的包括绘制2D曲线的plot函数、绘制2D隐函数曲线的ezplot函数、绘制3D曲面的mesh和surf函数、绘制3D显函数曲面的ezmesh和ezsurf函数。值得注意的是,ez系列的绘图函数里只有...
  • 隐函数绘制 隐函数形式: 格式: ezplot(隐函数表达式) 例题4 画图: 解: MATLAB代码: clc;clear; %x自选 ezplot('x^2*sin(x+y^2)+y^2*exp(x+y)+5*cos(x^2+y)') %限定范围 figure, ezplot('x^2*sin(x+y^2)+y^2*...
  • Matlab中隐函数绘制方法

    千次阅读 2021-11-24 12:04:54
    想必同学们在平时学习中经常会碰见隐函数吧,那么在matlab中如何绘制隐函数的图形呢? ezplot函数可能是大家经常使用的吧,但是该函数已经逐步要被淘汰了,不建议继续使用。 例如下面的代码中ezplot并不能给出很好...
  • matlab中绘图的方法 二维数据曲线图 隐函数绘图 图形修饰处理 图像处理与动画制作
  • matlab ezplot绘制隐函数

    千次阅读 2021-08-18 18:35:46
    ezplot绘制隐函数 clc,clear; close all; syms x; f1=exp(2*x)*sin(2*x); subplot(2,2,1),ezplot(exp(2*x),[-pi,pi]); subplot(2,2,2),ezplot(sin(2*x)); subplot(2,2,3),ezplot(exp(2*x)+sin(2*x),[-pi,pi,0,2*pi])...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 4,515
精华内容 1,806
关键字:

隐函数绘图