设为首页 收藏本站
查看: 729|回复: 0

[经验分享] 支持Python系列:Matlab的Python实现Scipy和Matplotlib简介

[复制链接]

尚未签到

发表于 2015-4-26 07:02:11 | 显示全部楼层 |阅读模式
 Matlab上成熟的函数库,进行数值计算和绘图很方便,在国内的应用也很广。不过授权也是大问题,所以目前有很多的替代开源实现,在Python上,我目前接触过Scipy(www.Scipy.org)和Matplotlib(http://matplotlib.sourceforge.net/)2个项目。
        " SciPy 是一个基于 Python 的项目,它旨在再现 MATLAB 的所有功能,优化其性能并简化与其它软件的集成,同时仍保持完全免费以及至少和 MATLAB 一样易于使用。"
(http://www-128.ibm.com/developerworks/cn/linux/l-oslab/index.html)
        Scipy每年都有SciPy  Conference,目前的版本还是04年的0.3.2,需要Python2.3  wxPython2.4   Numeric23等支持。Scipy的结构是scipy_core和scipy_lib两个部分,不过自己编译比较麻烦,要C和Fortran编译器。如果你需要比较完整的Matlab功能支持,可以选择它。建议安装Enhanced Python (http://www.enthought.com/python/) ,一次安装,该有的都有了。

        “Matplotlib 是一个由 John Hunter 等开发的,用以绘制二维图形的 Python 模块。它利用了 Python 下的数值计算模块 Numeric 及 Numarray,克隆了许多 Matlab 中的函数, 用以帮助用户轻松地获得高质量的二维图形。Matplotlib 可以绘制多种形式的图形包括普通的线图,直方图,饼图,散点图以及误差线图等;可以比较方便的定制图形的各种属性比如图线的类型,颜色,粗细,字体的大小等;它能够很好地支持一部分 TeX 排版命令,可以比较美观地显示图形中的数学公式。Matplotlib 掌握起来也很容易,由于 Matplotlib 使用的大部分函数都与 Matlab 中对应的函数同名,且各种参数的含义,使用方法也一致,这就使得熟悉 Matlab 的用户使用起来感到得心应手。对那些不熟悉的 Matlab 的用户而言,这些函数的意义往往也是一目了然的,因此只要花很少的时间就可以掌握。”(http://www-128.ibm.com/developerworks/cn/linux/l-matplotlib/?ca=dwcn-newsletter-linux)
         Matplotlib /Pylab,是一个比较轻量级的仿Matlab实现,版本更新也很快,目前最新的是支持Python2.4/2.3的 今年9月发布的0.84,和Python 2.4 wxPython2.6u等新版本的兼容都很好 ,数值计算支持Numeric 和 Numarray,个人建议用Numarray,如果是Numeric,目前最好用23,不用24版本。如果你想使用Python 2.4,并且主要是一些2维图形的开发,Matplotlib就很适合你。
        Scipy,Matplotlib,Numeric 和 Numarray,他们一起的组合就成了Python在数值计算绘图方面的利器,而且值得注意的是,他们都有一些共同的开发者,比如John Hunter,   Jay T Miller等人,所以在兼容上很好。目前值得关注的还有一个东西就是numpy(http://sourceforge.net/projects/numpy)上新发布的 scipy_core0.4,个人猜测,这个因该将用于Scipy的新版本和Numarray 的接替,比较scipy0.32的core代码和scipy_core0.4的代码,如果修改代码 ,scipy0.32_lib+scipy_core0.4应该可以用在python2.4上。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-60664-1-1.html 上篇帖子: [Dynamic Language] Python Exec & Compile 下篇帖子: 有趣的python range()函数
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表