重点重点!!!!!!!本人使用的Matlab版本是R2021b,如果下面代码在别的版本运行之后有bug显示的话,需要自己到百度寻找相应的函数把错误的地方替换
首先在Matlab上实现对一元二次方程的代码编写:
实现简单的一元二次方程 x^2-2x-1=0 的代码编程
%% 本程序求解x^2-2x-1=0
p = [1,-2,-1];
%此数组用在roots函数上代表的意思就是上式的二次项系数、一次项系数和常数项
x_fun = roots(p);
fprintf('x^2 - 2x - 1 = 0的结果是:%f和%f\n',x_fun);
可以看到运行改代码之后的结果是
至此,一个简单的一元二次方程 x^2-2x-1=0 求解完成
接下来,我们就要开始实现在Matlab上该方程的图像显示
在Matlab上的代码编写如下:
%%显示函数的图像
fun = fplot(@(x)(x^2-x*2-1));%也可以直接用fplot(@(x)(x^2-x*2-1));用fun来接着这个函数是为了下面的格式更改
fun.Marker = 'x';%添加交叉标记
fun.MarkerEdgeColor = 'b';%将标记颜色更改为蓝色
fun.Color = 'r';%将线条更改为红色线条
fun.LineStyle = ':';%函数线型点线式
grid on;%显示或者隐藏网格线
title('x^2-2x-1');%添加标题
hold on;
运行上面代码得到的图像便是这样的:
如果直接运行fplot(@(x)(x^2-x*2-1))得到的图像是下面这样的:
在使用fplot这个函数的时候,我翻阅了一下Matlab里面关于fplot函数的使用方法和里面一些语法并总结了一下:fplot函数有很多种语法,
例如 fplot(f)就是在默认区间 [-5,5] 绘制由函数 y = f(x) 定义的曲线;
fplot( f, xinterval)将在指定的区间绘图,区间定义为[xmin, xmax]形式的二元素向量。
等等等等还有好几种语法定义,我就不一 一展示了,有兴趣的可以直接在matlab上查找
接下来,就详细说一下函数格式更改的一些属性变量定义:
LineStyle 线型: 实线 ‘-’ 虚线‘--’ 点线‘:’ 点划线‘-.’
Marker 标记: 圆圈‘o’ 加号‘+’ 叉号‘x’ 点‘.’ 星号‘*’ 等等
Color 颜色: 红色‘r’ 绿色‘g’ 蓝色‘b’ 甚至还可以用RGB来表示比如红色[1 0 0] 十六进制代码‘#FF0000’
MarkerEdgeColor 标记颜色: 属性变量定义和上面的Color一样
还有一个更方便的把线型、标记、颜色都结合起来的属性变量是LineSpec,比如‘-or’意思就是线型为‘-’实线 标记为‘o’圆圈 颜色为‘r’红色 使用的方法可以直接加在fplot函数后面
fun = fplot(@(x)(x^2-x*2-1),'-or');
grid on;%显示或者隐藏网格线
title('x^2-2x-1');%添加标题
hold on;
图像显示效果如下:
总结
在Matlab上可以用一维数组和roots函数来实现方程式的自定义,接着用fplot函数来实现图像的显示
此外,实现方程式的自定义函数不止roots,还可以用solve函数等等,其余函数读者感兴趣的可以自行百度