python的计算_python 科学计算(一)

使用python的科学计算库,达到快速计算的效果。

标准的Python中用列表(list)保存一组值,可以当作数组使用。但由于列表的元素可以是任何对象,因此列表中保存的是对象的指针。这样一来,为了保存一个简单的列表[1,2,3],就需

要有三个指针和三个整数对象。对于数值运算来说,这种结构显然比较浪费内存和 CPU 计算时间。

使用numpy的array模块可以解决这个问题。细节不在此赘述。这里主要记录一些matplotlib的基本使用方法 first plot#first plot with matplotlibimport matplotlib.pyplot as pltplt.plot([1,3,2,4])plt.show()in order to avoid pollution of global namespace, it is strongly recommended to never import like:from import *

simple plotimport matplotlib as mplimport matplotlib.pyplot as pltimport numpy as npx = np.arange(0.0,6.0,0.1)plt.plot(x, [xi**2 for xi in x],label = 'First',linewidth = 4,color = 'black')plt.plot(x, [xi**2+2 for xi in x],label = 'second',color = 'red')plt.plot(x, [xi**2+5 for xi in x],label = 'third')plt.axis([0,7,-1,50])plt.xlabel(r"$\alpha$",fontsize=20)plt.ylabel(r'y')plt.title('simple plot')plt.legend(loc = 'upper left')plt.grid(True)plt.savefig('simple plot.pdf',dpi = 200)print mpl.rcParams['figure.figsize'] #return 8.0,6.0print mpl.rcParams['savefig.dpi'] #default to 100 the size of the pic will be 800*600#print mpl.rcParams['interactive']plt.show()

201211092231016714.png

Decorate plot with styles and types

import matplotlib as mplimport matplotlib.pyplot as pltimport numpy as npx = np.arange(0.0,6.0,0.1)plt.plot(x, [xi**2 for xi in x],label = 'First',linewidth = 4,color = 'black') #using color string to specify colorplt.plot(x, [xi**2+2 for xi in x],'r',label = 'second') #using abbreviation to specify colorplt.plot(x, [xi**2+5 for xi in x],color = (1,0,1,1),label = 'Third') #using color tuple to specify colorplt.plot(x, [xi**2+9 for xi in x],color = '#BCD2EE',label = 'Fourth') #using hex string to specify colorplt.xticks(np.arange(0.0,6.0,2.5))plt.xlabel(r"$\alpha$",fontsize=20)plt.ylabel(r'y')plt.title('simple plot')plt.legend(loc = 'upper left')plt.grid(True)plt.savefig('simple plot.pdf',dpi = 200)print mpl.rcParams['figure.figsize'] #return 8.0,6.0print mpl.rcParams['savefig.dpi'] #default to 100 the size of the pic will be 800*600#print mpl.rcParams['interactive']plt.show()20121109223102684.png

types of graph

201211092231032735.png

Barsimport matplotlib.pyplot as pltimport numpy as npdict = {'A': 40, 'B': 70, 'C': 30, 'D': 85}for i, key in enumerate(dict): plt.bar(i, dict[key]);plt.xticks(np.arange(len(dict))+0.4, dict.keys());plt.yticks(dict.values());plt.grid(True)plt.show()201211092231037784.png

Piesimport matplotlib.pyplot as pltplt.figure(figsize=(10,10));x = [4, 9, 21, 55, 30, 18]labels = ['Swiss', 'Austria', 'Spain', 'Italy', 'France','Benelux']explode = [0.2, 0.1, 0, 0, 0.1, 0]plt.pie(x, labels=labels, explode=explode, autopct='%1.1f%%');plt.show()

201211092231042518.png

Scatterimport matplotlib.pyplot as pltimport numpy as npx = np.random.randn(12,20)y = np.random.randn(12,20)mark = ['s','o','^','v','>','<','d','p','h','8','+','*']for i in range(0,12):plt.scatter(x[i],y[i],marker = mark[i],color =(np.random.rand(1,3)),s=50,label = str(i+1))plt.legend()plt.show()2012110922310476.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值