玩命加载中 . . .

GNU Octave学习之高级功能


绘图

首先,也是很重要的一点,就是使用Octave进行图形绘制,包括各种函数图像、统计图等。

绘制函数图像

基本语法

从一个比较基础的栗子看起。我们现在要画出如下多项式函数的图形:

$f(x) = 3x^4+2x^3+7x^2+2x+9$

我们的Octave代码如下

x = [-10: 0.01: 10];
y = 3*x.^4 + 2*x.^3 + 7*x.^2 + 2*x + 9
plot(x, y)

给x赋值为分量均匀的向量,其实是指定函数定义域;给出y用x表达的式子,其实是给出函数的对应关系(注意x是向量,运算符不要弄错了);plot()接收自变量和函数值,绘制相应的函数曲线。

配置

绘制图形之后,还可以在图形上添加标题、标签、网格线和缩放等,通常使用如下命令:

  • xlabel、ylabel,产生沿着x轴、y轴的标签
  • title,放置标题
  • grid on 允许添加网格线

给图像设置颜色,可以将表示颜色的字符作为参数传入plot():plot(x, y, 'r'),设置了红色线条。

子图

使用subplot(m, n, p)命令设置每一个子图的特征,其中m、n分别表示绘图数组的行数、列数,而p指定放置特定绘图的位置(默认地,子图从左至右、从上至下依次记为1、2…)。

绘制条形图

同样地,设置定义域(x轴变量)、每一个x轴的项的值(y轴变量),调用bar(x, y)命令即可绘制条形图。

x = [1:10];
y = [75, 58, 90, 87, 50, 85, 92, 75, 60, 95];
bar(x,y), xlabel('Student'),ylabel('Score'),
title('First Sem:')

同样地,也可以设置横轴信息、纵轴信息、标题等。

代数与方程

求解基本代数方程

roots()函数用于求解多项式代数方程,并返回代数方程的值。比如我们要求解方程$x - 5 = 0$,可以按照如下方式调用函数:

y = roots([1, -5])
% roots()求解方程的结果将赋值给y

再比如求解方程$x^3 + 2x^2-5x+9=0$:

roots([1, 2, -5, 9])

当一个方程有多个解时,将以列向量方式返回结果。

求解代数方程组

对于多元一次方程组,由学过的代数知识,它总可以表示成矩阵形式:

Ax = b,其中A是系数矩阵,b是包含线性方程右侧的列向量,x是解的列向量。我们先创建出A、b的矩阵(或者向量),然后使用A\b即可得到解的列向量。

求解极限

这里需要使用symbols符号包。


文章作者: 鹿卿
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 鹿卿 !
评论
  目录