清单 5. 在 Octave 中生成多个图形 所生成的多图页面如图 4 所示。这是将相关图形搜集在一起进行比较和对比的一种很好的特性。 图 4. 使用 GNU Octave 绘制多图 我们可以认为 Octave 是一种使用 gnuplot 作为后台实现来进行可视化的高级语言。它提供了丰富的数学库,是 Matlab 的一个很好的免费替换产品。可以很容易利用用户开发的用来进行语音处理、优化、符号计算等的包对它进行扩展。Octave 在某些 GNU/Linux 的发行版中都有,例如 Debian,也可以在使用 Cygwin 的 Windows 和 Mac OS X 上使用。 Scilab Scilab 在启用数值计算和可视化方面都与 GNU Octave 非常类似。 Scilab 是世界上广泛存在的工程和科学应用程序所使用的一种解释器和高级语言。 Scilab 诞生于 1994 年,它是由法国的 INRIA(Institut national de recherche en informatique et en automatique)和 ENPC(École Nationale des Ponts et Chaussées)设计的。从 2003 年开始 Scilab 开始由 Scilab Consortium 进行维护。 Scilab 包括一个很大的数学函数库,可以利用使用 C 和 Fortran 之类的高级语言编写的程序进行扩充。它还有重载数据类型和操作的能力。它包括一个集成的高级语言,不过这种语言与 C 语言稍微有些区别。 Scilab 中有很多工具包提供了 2-D 和 3-D 的图形动画、优化、统计、图标和网络、信号处理、混合动态系统模拟和仿真以及其他许多由社区所贡献的功能。 在大部分 UNIX 系统上都可以使用 Scilab,在较新的 Windows 操作系统上也可以使用。与 GNU Octave 一样, Scilab 也有很好的文档。由于它是一个欧洲的项目,因此还可以找到很多使用除英语之外的其他语言所编写的文档和文章。 在启动 Scilab 之后,就会显示一个窗口让我们可以与之进行交互(如图 5 所示)。 图 5. 与 Scilab 进行交互 在这个例子中,先是创建了一个向量(t),其值的范围从 0 到 2PI(步进大小为 0.2)。然后生成了一个 3-D 图形(使用 z=f(x,y), 或者说是 xi,yi 点处的一个表面)。图 6 给出了所生成的图形。 |