最近试了一下Pythonxy,集成了Numpy和Scipy包的Py,在功能方面基本上能和Matlab相媲美了。除了一些专有的功能,Py和matlab相差也就在速度上了,毕竟一个是编译型程序,一个是解释性语言,在速度方面有着本质上的区别。不过Py的Numpy包里的wave和f2py模块,能让Py有着C和Fortran的运算速度。

闲话少说,下边是生成蕨类植物叶子的一段程序,主要是生成分形图形。蕨类植物的局部自相似性较适合做分形图形,计算过程中像素点选择有些少,算出来的图片真实感并不强。源码来自于《Python科学计算》import numpy as np
import matplotlib.pyplot as pl
import time

ep1=np.array([[0,0,0],[0,0.16,0]])
p1=0.01

ep2=np.array([[0.2,-0.26,0],[0.23,0.24,0.44]])
p2=0.7

ep3=np.array([[-0.15,0.28,0],[0.26,0.24,0.44]])
p3=0.07

ep4=np.array([[0.85,0.04,0],[-0.04,0.85,1.6]])
p4=0.85

def ifs(p,eq,init,n):
pos=np.ones(3,dtype=np.float)
pos[:2]=init

p=np.add.accumulate(p)
rands=np.random.rand(n)
select=np.ones(n,dtype=np.int)*(n-1)
for i,x in enumerate(p[::-1]):
select[rands

计算的结果:


 PS: 为了这个东西,还是回到了Py2.7。=_=!!!

作者 hsyyf

《Pythonxy测试》有6条评论

回复 tusooa 取消回复

您的电子邮箱地址不会被公开。 必填项已用*标注