Python的科学计算包matplotlib setup
- 回想起大学四年
专业一直使用matlab,然而我却没在PC上装成功过,以前懒于思考这种数学工具的作用,直到最近,大学同学研究生要毕业了,几经交流,和自己阅读了一些机器学习的教材之后,发觉科学计算包和画图工具对于某些岗位来说非常的必要,因为使用数学建模而设计各种工业设计图的时候,需要对参数的调制画图观察效果。虽然我没有接触过实际场景,但在概率论的角度看,某些离散集合的数字特征(期望,方差)等,在图像上的表现,也可以借助此科学计算包辅助分析。
- set up
第一步
到python官网下载一个3.6的包,不知道从3.多版本开始,python开始支持pip,使用pip安装依赖很方便。最好使用windows系统,因为这种科学计算包做数学分析的多,而不是做功能,不需要一定在linux上运行。python官网
第二步
安装、并设置环境变量。主要在path后加上python安装路径就行。图解请百度。
第三步
在确定cmd可以输入python之后,使用命令安装matplotlib
python -m pip install matplotlib
安装完成之后,写一个Demo,画两条三角函数线。
#!/usr/bin/python
#导入画图包
from pylab import * #创建一个新的8 * 6点的图 设置分辨率为80
figure(figsize=(8,6),dpi=80) #创建一个新的 1 * 1的子图
subplot(1,1,1) X=np.linspace(-np.pi,np.pi,256,endpoint=True)
C=np.cos(X)
S=np.sin(X)
#绘制余弦 用蓝色 连续 宽度1
plot(X,C,color='blue',linewidth=1.0,linestyle='-')
#绘制正弦 用绿色 连续 宽度1
plot(X,S,color='green',linewidth=1.0,linestyle='-') #设置横轴上下限
xlim(-4.0,4.0)
#设置横轴记号
xticks(np.linspace(-4,4,9,endpoint=True))
#设置竖轴上下限
ylim(-1.0,1.0)
#设置横轴记号
yticks(np.linspace(-1,1,5,endpoint=True)) #显示
show()

- 绘制简单直线
#!/usr/bin/python
#常用数据类型练习 科学计算包
from pylab import *
x=(-3,-2,-1,0,1,2,3)
xlim(-4.0,4.0)
ylim(-8.0,8.0)
plot(x,[x*2+1 for x in x])
title("draw")
xlabel("x")
ylabel("y") show()

加上一段抄来的代码,主要是美化界面的
#!/usr/bin/python
#常用数据类型练习 科学计算包
from pylab import *
x=(-3,-2,-1,0,1,2,3)
ax = plt.subplot(111)
ax.spines['right'].set_color('none')
ax.spines['top'].set_color('none')
ax.xaxis.set_ticks_position('bottom')
ax.spines['bottom'].set_position(('data',0))
ax.yaxis.set_ticks_position('left')
ax.spines['left'].set_position(('data',0))
xlim(-4.0,4.0)
ylim(-8.0,8.0) plot(x,[x*2+1 for x in x])
title("draw")
xlabel("x")
ylabel("y") show()

- 矩阵运算
创建一个基本的数组
np.array()
使用数组运算是对应位置操作,不属于线性代数的矩阵运算。

矩阵matrix,使用如下创建。
np.mat()



两个矩阵相加,则对应位置相加。

列向量(1;2)乘以行向量(1,2)得到2*2的矩阵。
矩阵转置使用.T

- 线性空间,离散空间
np.linspace()
上述新建一个线性空间
np.arange()
上述新建一个离散空间
利用线性空间绘制函数图
#coding:utf-8
#画连续空间
from pylab import * x=np.linspace(-10,10,256,endpoint=True)
s=np.sin(x)
plot(x,s)
show()

利用离散空间绘制柱状图
#coding:utf-8
#画离散空间散点图
from pylab import *
from scipy.stats import binom as B
rv=B(10,0.3)#伯努利试验 X~B(n,p)
x=np.arange(0,20,1)
y=rv.pmf(x)
#plt.scatter(x,y,color='red')#绘制散点图
plt.bar(x,y,width=0.6,color='blue')
plt.show()

- 常用函数
#encoding:utf-8
#常用函数
from pylab import * x1=np.linspace(-2,2)
y1=x1**2#二次函数 抛物线
y2=np.exp(x1)#e为底指数函数
y3=np.log(x1)#自然对数函数
y4=np.sqrt(x1)#根号函数 #plt.plot(x1,y1,color='red',linewidth=2)
#plt.plot(x1,y2,color='blue',linewidth=2)
#plt.plot(x1,y3,color='green',linewidth=2)
#plt.plot(x1,y4,color='yellow',linewidth=2) #show()
- 频率调制波
from pylab import *
time = np.arange(0,10,.01)
x = np.sin(2 * np.pi * 1 * time)
x2 = np.sin(2 * np.pi * 100 * time)
x3 = np.sin(2 * np.pi * 20 * time)
x += x2 + x3
plot(time,x)
show()

后续学习持续更新....
Python的科学计算包matplotlib setup的更多相关文章
- Python下科学计算包numpy和SciPy的安装
转载自:http://blog.sina.com.cn/s/blog_62dfdc740101aoo6.html Python下大多数工具包的安装都很简单,只需要执行 “python setup.py ...
- Python下科学计算包numpy和SciPy的安装【原创】
Python下大多数工具包的安装都很简单,只需要执行 "python setup.py install"命令即可.然而,由于SciPy和numpy这两个科学计算包的依赖关系较多,安 ...
- 第六节,Python的科学计算包——Numpy
1.基本类型(array) import numpy as np a=[1,2,3,4] b=np.array(a) #array([1,2,3.4]) type(b) #<type 'nump ...
- Python科学计算包模块的安装(ubuntu)
Python的科学计算包设计到C语言代码的编译,采用pip的方式安装会出现错误. 一种简单的方式是采用的集成包,具体的步骤参考:https://www.continuum.io/downloads#_ ...
- 动态可视化 数据可视化之魅D3,Processing,pandas数据分析,科学计算包Numpy,可视化包Matplotlib,Matlab语言可视化的工作,Matlab没有指针和引用是个大问题
动态可视化 数据可视化之魅D3,Processing,pandas数据分析,科学计算包Numpy,可视化包Matplotlib,Matlab语言可视化的工作,Matlab没有指针和引用是个大问题 D3 ...
- Windows下安装python的scipy等科学计算包(转)
如果要使用python进行科学计算.数据分析等,一定要安装scipy.seaborn.numpy等等包. 但Windows下安装python的第三方库经常会出现问题.此前,已介绍过Windows下如何 ...
- 使用python做科学计算
这里总结一个guide,主要针对刚开始做数据挖掘和数据分析的同学 说道统计分析工具你一定想到像excel,spss,sas,matlab以及R语言.R语言是这里面比较火的,它的强项是强大的绘图功能以及 ...
- 使用Python做科学计算初探
今天在搞定Django框架的blog搭建后,尝试一下python的科学计算能力. python的科学计算有三剑客:numpy,scipy,matplotlib. numpy负责数值计算,矩阵操作等: ...
- 使用Python做科学计算初探(转)
今天在搞定Django框架的blog搭建后,尝试一下python的科学计算能力. python的科学计算有三剑客:numpy,scipy,matplotlib. numpy负责数值计算,矩阵操作等: ...
随机推荐
- 无法启动Tomcat, 端口被占用的问题
这个错误是说这几个端口已经有某个应用程序占用了,所以Tomcat就没法启动了. 出现这个问题的原因可能有以下几种: 情况一:点击运行的时候没有选中页面或Servlet窗口的标签 标签被选中时: 标 ...
- dedecms分页
mshd_orderlist.php $page = isset($_REQUEST[; $count = $mshd_miaosha_member_obj -> getMemberList(t ...
- [Selenium]等待元素出现之后再消失,界面上的loading icon都属于这种类型,之前的方法总是卡死,换这种方法目前还好用的
等待元素出现之后再消失,界面上的loading icon都属于这种类型,之前的方法总是卡死,换这种方法目前还好用的 /** * Check if the element present with cu ...
- 为什么都说UX / UI设计师是最佳工作?
以下内容由Mockplus团队翻译整理,仅供学习交流,Mockplus是更快更简单的原型设计工具. 你将成为永远热爱自己工作的人,做着自己喜欢的工作还能得到相应的成果和报酬,就好似在度带薪年假一般,何 ...
- android listView布局等分列
android listView布局4等分列. 必须要加上<RelativeLayout 在外层,不然等分不起作用 <RelativeLayout xmlns:android=" ...
- C++中const在函数中的用法
1.const放在函数前面 如果我们的函数的返回值是以 指针形式 返回的,如果在函数前面加上const修饰,则表示指针指向的内容是不能被改变的,并且接收返回值的 指针变量必须是const修饰的,例如: ...
- c+内存管理机制
内存管理是C++最令人切齿痛恨的问题,也是C++最有争议的问题,C++高手从中获得了更好的性能,更大的自由,C++菜鸟的收获则是一遍一遍的 检查代码和对C++的痛恨,但内存管理在C++中无处不在,内存 ...
- Groovy 读取json文件,并用gson反序列化为List集合
Groovy 读取json文件,并用gson反序列化 package com.bicycle.util import bicycle_grails.StationInfo import com.goo ...
- day14(带参装饰器,迭代器,生成器,枚举对象)
一,复习 ''' 函数的嵌套定义:在函数内部定义另一个函数 闭包:被嵌套的函数 -- 1.外层通过形参给内层函数传参 -- 2.验证执行 开放封闭原则: 功能可以拓展,但源代码与调用方式都不可以改变 ...
- Axure8.0入门级基础操作到高手产品经理
宅男下载了一个Axure8.0.从来没有用过,那就从最基础的了解一下呗. 1.添加元件,选择元件设置样式(右侧对话框中)略!!!!! 2.按住ctrl键,用鼠标点选元件,可以任意旋转3.点元件上的黑圆 ...