提到科学计算,可能大家马上就想到了matlab,maple等,可能也有人会想到开源的软件,比如scilab,octave,R,gnuplot等等。
这些软件都有它们自己的特点,有时候可能只用它的一点功能就要安装并系统学习它,耗费时间精力甚多。
统一是每个人的夙愿,统一的语法让我们不用为了使用一个工具就去学习它的语法。python各种库的出现,实现了我们的愿望。
python的库太巨大了,能满足你所有的应用要求(有点夸张了)。各种库紧密围绕在python周围,共同编织美好的明天。
科研离不开科学计算,写论文离不开数据可视化。下面列出了我选用的python库,专门解决这两个问题。
python--优雅的编程语言
matplotlib--SourceForge最佳项目,python的2D绘图库
mayavi2--python的3D绘图库
sympy---python符号计算库
numpy 和 scipy --python数值计算库
简介
1、numpy and scipy:numpy提供了矩阵和向量类,而scipy依赖numpy,它封装了科学计算的算法。简单的说,numpy提供对象,scipy提供了算法。
2、matplotlib:绘图功能基本上可以与matlab媲美,它的特色是可以嵌入类似tex语言的数学公式,这样就可以方便地对图添加数学公式。这个功能
很方便,我以前想对图的标题添加上下标而不得,现在问题很好地解决了。matlab绘图确实方便,但我选择matplotlib的另一个重要原因就是matplotlib画的图很
漂亮,可能是我matlab太差吧,但是同样是默认绘图参数,matplotlib绘制的图看起来就是舒服许多,曲线非常平滑,没有锯齿。它的文档非常丰富,而且
它的demo图非常丰富。如果你要绘制二维图形,先到它网上去寻找一个漂亮的图,然后copy的代码,稍微修改一下,就能画出非常专业的二维图。
3、mayavi2 :绘制的三维图非常好看,我第一次看到它绘制的向量场图,那种惊讶之状无法形容。
4、sympy:符号计算库,函数名称类似maple。
以上介绍的库的文档非常丰富,要学习它们只需要认真看文档就行了。它们文档结构很好,便于查找,临时抱佛脚可能效果也很显著,毕竟完成了任务就ok了。
一个一个库去安装费时费力,已经有人将它们都集成到一起,比如python(x,y)。python(x,y)面向的对象是科学家,它的开发者开发了一个类似matlab一个环境,
使用起来非常方便,最重要的是它免费。网上有下载,google一下吧。
我也发现了一个python protable 软件,它内置了许多库,可能是mayavi2体积太大就没包含它,但是已经够用了。你可以把它解压到U盘中,将它插到没有安装python的机器中照样可以运行python、画二维图.....。软件大概60多M,网上有下载,选择2.5版的下载。
matplotlib图:
mayavi2图:
阅读(25499) | 评论(1) | 转发(1) |