---恢复内容开始---

一、Numpy

NumPy(Numeric Python)系统是 Python 的一种开源的数值计算扩展。这种工具可用来存储和处理大型矩阵,比 Python 自身的嵌套列表(nested list structure)结构要高效的多(该结构也可以用来表示矩阵(matrix))。据说 NumPy 将 Python 相当于变成一种免费的更强大的 MatLab 系统。

numpy 特性:开源,数据计算扩展,ndarray, 具有多维操作, 数矩阵数据类型、矢量处理,以及精密的运算库。专为进行严格的数字处理而产生。

特点:运算速度快、消耗资源少。

默认使用 Anaconda 集成包环境开发。

1、numpy 属性

几种 numpy 的属性:

ndim:维度

shape:行数和列数

size:元素个数

使用 numpy 首先要导入模块

1 import numpy as np #为了方便使用numpy 采用np简写

列表转化为矩阵:

1 array = np.array([[1,2,3],[2,3,4]]) #列表转化为矩阵

2 print(array)3 """

4 array([[1, 2, 3],5 [2, 3, 4]])6 """

numpy 的几种属性:

1 print('number of dim:',array.ndim) #维度

2 #number of dim: 2

3

4 print('shape :',array.shape) #行数和列数

5 #shape : (2, 3)

6

7 print('size:',array.size) #元素个数

8 #size: 6

2、Numpy 的创建 array

关键字

array:创建数组

dtype:指定数据类型

zeros:创建数据全为0

ones:创建数据全为1

empty:创建数据接近0

arrange:按指定范围创建数据

linspace:创建线段

二、Matplotlib

Matplotlib 是 Python 的绘图库。 它可与 NumPy 一起使用,提供了一种有效的 MatLab 开源替代方案。 它也可以和图形工具包一起使用,如 PyQt 和 wxPython。

matplotlib.pyplot 模块可以画折线图,分为两个步骤,分别是 pyplot.plot() 和 pyplot.show() ,前者负责画图,后者将画好的图展示出来。

基本使用:

1 importnumpy as np2 importmatplotlib.pyplot as plt3 x=np.linspace(0,6,100)4 y=np.cos(2*np.pi*x)*np.exp(-x)+0.8

5 plt.plot(x,y,'k',color='r',linewidth=3,linestyle="-")6 plt.show()

效果如图:

三、雷达图绘制

代码如下:

1 importnumpy as np2 importmatplotlib.pyplot as plt3 importmatplotlib4 matplotlib.rcParams['font.family']='YouYuan'

5 matplotlib.rcParams['font.sans-serif']=['YouYuan']6 labels=np.array(['第一周','第二周','第三周','第四周','第五周','第六周'])7 nAttr=6

8 data=np.array([100,100,96.7,100,110,70])9 angles=np.linspace(0,2*np.pi,nAttr,endpoint=False)10 data=np.concatenate((data,[data[0]]))11 angles=np.concatenate((angles,[angles[0]]))12 fig=plt.figure(facecolor="white")13 plt.subplot(111,polar=True)14 plt.plot(angles,data,'bo-',color='red',linewidth=2)15 plt.fill(angles,data,facecolor='orange',alpha=0.25)16 plt.thetagrids(angles*180/np.pi,labels)17 plt.figtext(0.5,0.95,'12号Regan_White_Lin的成绩表',ha='center')18 plt.grid(True)19 plt.savefig('pic.JPG')20 plt.show()

效果图如下:

四、图像手绘风格

代码如下:

1 from PIL importImage2 importnumpy as np3 vec_el=np.pi/3.2

4 vec_az=np.pi/3.5 depth=20.6 im=Image.open('111.jpg').convert('L')7 a=np.asarray(im).astype('float')8 grad=np.gradient(a)9 grad_x,grad_y=grad10 grad_x=grad_x*depth/100.11 grad_y=grad_y*depth/100.12 dx=np.cos(vec_el)*np.cos(vec_az)13 dy=np.cos(vec_el)*np.sin(vec_az)14 dz=np.sin(vec_el)15 A=np.sqrt(grad_x**2+grad_y**2+1.)16 uni_x=grad_x/A17 uni_y=grad_y/A18 uni_z=1./A19 a2=255*(dx*uni_x+dy*uni_y+dz*uni_z)20 a2=a2.clip(0,255)21 im2=Image.fromarray(a2.astype('uint8'))22 im2.save('new.jpg')

效果图前后对比:

五、绘制数学模型

代码如下:

1 importnumpy as np2 importmatplotlib.pyplot as plt3 theta=np.arange(0,2*np.pi,0.02)4 plt.subplot(121,polar=True)5 plt.plot(theta,2*np.ones_like(theta),lw=2)6 plt.plot(theta,theta/6,'--',lw=2)7 plt.subplot(122,polar=True)8 plt.plot(theta,np.cos(5*theta),'--',lw=2)9 plt.plot(theta,2*np.cos(4*theta),lw=2)10 plt.rgrids(np.arange(0.5,2,0.5),angle=45)11 plt.thetagrids([0,45,90])12 plt.show()

效果如下:

---恢复内容结束---

科学计算与可视化python_Python科学计算和可视化相关推荐

  1. numpy不用科学记数发 python_Python科学计算库Numpy常用的函数使用

    林小森博客: Python科学计算库Numpy常用的函数使用 - 林小森​www.linxiaosen.com Numpy具有强大的计算功能,本文介绍Numpy常用的函数,可以有效的提高工作效率. 首 ...

  2. 《数据科学R语言实践:面向计算推理与问题求解的案例研究法》一一2.1 引言...

    本节书摘来自华章计算机<数据科学R语言实践:面向计算推理与问题求解的案例研究法>一书中的第2章,第2.1节,作者:[美] 德博拉·诺兰(Deborah Nolan) 邓肯·坦普·朗(Dun ...

  3. 《数据科学R语言实践:面向计算推理与问题求解的案例研究法》一一2.4 探索所有男选手的跑步时间...

    本节书摘来自华章计算机<数据科学R语言实践:面向计算推理与问题求解的案例研究法>一书中的第2章,第2.4节,作者:[美] 德博拉·诺兰(Deborah Nolan) 邓肯·坦普·朗(Dun ...

  4. 《数据科学R语言实践:面向计算推理与问题求解的案例研究法》一一 1.1 引言...

    本节书摘来自华章计算机<数据科学R语言实践:面向计算推理与问题求解的案例研究法>一书中的第1章,第1.1节,作者:[美] 德博拉·诺兰(Deborah Nolan) 邓肯·坦普·朗(Dun ...

  5. 《数据科学R语言实践:面向计算推理与问题求解的案例研究法》一一2.3 数据清洗和变量格式化...

    本节书摘来自华章计算机<数据科学R语言实践:面向计算推理与问题求解的案例研究法>一书中的第2章,第2.3节,作者:[美] 德博拉·诺兰(Deborah Nolan) 邓肯·坦普·朗(Dun ...

  6. 七桥问题属于计算机科学方法论中的,计算机科学与技术方法论-计算学科中的科学问题ppt...

    PPT内容 这是一个关于计算机科学与技术方法论-计算学科中的科学问题ppt,主要介绍科学问题是指一定时代的科学认识主体,在已完成的科学知识和科学实践的基础上,提出的需要解决且有可能解决的问题.欢迎点击 ...

  7. 《数据科学R语言实践:面向计算推理与问题求解的案例研究法》一一2.5 为跨年度的个人参赛选手构造记录...

    本节书摘来自华章计算机<数据科学R语言实践:面向计算推理与问题求解的案例研究法>一书中的第2章,第2.5节,作者:[美] 德博拉·诺兰(Deborah Nolan) 邓肯·坦普·朗(Dun ...

  8. 计算机科学计算方面分为,计算机方面的专业分为哪些类?【资讯与计算科学】和【电脑科学与技术专业】有什么不同?...

    计算机方面的专业分为哪些类?[资讯与计算科学]和[电脑科学与技术专业]有什么不同?以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看 ...

  9. 信息与计算科学跨考计算机,信息与计算科学考研的方向介绍

    考研是现在很多大学生都会选择的目标,如果考研成功,我们未来的学习和生活都会经历很大的变化,有助于我们的未来甚至梦想的实现.如果你是学信息与计算学专业的学生,考研方向有哪些呢?前景是怎样的呢?快往下看吧 ...

  10. 使用计算机研究生命科学的文章,现代若干科学前沿的计算主义哲学蕴意.doc

    现代若干科学前沿的计算主义哲学蕴意 现代若干科学前沿的计算主义哲学蕴意2011-06-15 09:43 P.M.现代若干科学前沿的计算主义哲学蕴意 李建会王德胜 (北京师范大学哲学系北京100875) ...

最新文章

  1. 说到心里的哲理个性签名 学生时代的恋爱无非就是陪伴二字
  2. 软件定义闪存存储系统关键技术
  3. 个人小应用服务器安装搭建,HP 360p Gen9 使用winpe安装centos[一]
  4. 《×××颂》贵在突破了中国花鸟画难以反映社会主题的尴尬
  5. mysql计算1000天后的日期_mysql,数据库_mysql 计算某个时间,多少天后,多少个月后时间戳,mysql,数据库,数据库设计 - phpStudy...
  6. 快速傅里叶变换Matlab示例
  7. 记一次使用 Lombok 翻车造成的事故!
  8. Mule学习笔记(二)
  9. 使用FizzBu​​zz和Mockito进行单元测试
  10. python求回数_用python求回数
  11. c++命令行解析库cmdline使用
  12. java锁的概念,Java ReentrantLock锁机制概念篇
  13. 解决VC++6.0打开文件或添加文件到工程出错的问题
  14. UVA10978 Let's Play Magic!【模拟】
  15. robotframework自动化测试修炼宝典_软件测试工程师必备:Robot Framework实现接口自动化实践!...
  16. [AHK]双击Ctrl+C调用谷歌翻译!
  17. java 创建txt_java创建txt文件并存入内容
  18. 降级降薪去 Amazon ——左耳朵
  19. html中的圆周率如何调用,谁算出来的圆周率
  20. 最近美团前端面试题目整理

热门文章

  1. BZOJ3781 小B的询问
  2. axios的this指向_vue使用axios时this指向哪里
  3. 明基5560 win7 64驱动_这个Win7系统,稳定又纯净!
  4. redis list操作_PHP操作Redis相关函数
  5. 如何在手机上编码python_如何在Python中进行热编码?
  6. 对口高考计算机类专业试题,河南对口高考计算机专业课试题
  7. php文件开头加数据,在PHP中附加到文件的开头
  8. mysql中的默认表_MySQL中表的默认类型为( )。_学小易找答案
  9. 如何通过Azure Service Management REST API管理Azure服务
  10. MySql常用语句总结更新