1、搭建matplotlib环境

  构建matplotlib运行环境,需要满足相关软件环境。

  numpy库提供大数据集的数据的数据结构和数学方法。诸如元组、列表或字典等python的默认数据结构同样可以很好的支持数据的插入、删除和谅解。NumPy的数据结构支持矢量操作,使用简便,同时具有很高的执行效率。矢量操作在实现时充分考虑了大数据的需要,基于C语言的方式也保证了执行效率。

  基于Numpy的scipy库,是Python的标准科学计算和数学计算工具包,包含了大量的专用函数和算法。大部分函数和算法源自著名的Netlib软件仓库(http://www.netlib.org),实际上是使用C语言和Fortran实现的。

1、安装NumPy

  安装Python-NumPy软件包

apt-get install python-numpy

安装完成后,使用命令

python -c 'import numpy; printf numpy_.__version__'

  检查版本。

2、安装所需库

  libpng1.2:PNG文件处理

  freetype6:处理True type字体

sudo apt-get install libfreetype6
sudo apt-get install libpng12-dev 

3、安装matplotlib

apt-get install python-matplotlib4

如果你想进行机器学习方向的学习,下面这些库也是必不可少的。

4、安装scipy

Scipy是一个高级的科学计算库,它和Numpy联系很密切,Scipy一般都是操控Numpy数组来进行科学计算,所以可以说是基于Numpy之上的开发工具。

apt-get installl python-scipy5

5、安装数据分析工具pandas

 apt-get install python-pandas 6

6、sklearn是必不可少的,sklearn中包含了大量的优质的数据集,在你学习机器学习的过程中,你可以通过使用这些数据集实现出不同的模型。安装指令

apt-get install python-sklearn

2、安装virtualenv和virtualenvwrapper

  如果同时工作在多个项目上,或是需要在不同项目间频繁切换,将所有软件都安装在操作系统上并不是一个好主意。当需要在不同系统上运行软件时,这种方式会带来问题。virtualenv它可以创建一个独立的python环境,这样就可以让我们很容易的在不同的运行环境之间切换。同时,如果需要切换到另外的机器或者需要在产品服务器上部署软件时,用virtualenv可以很容易的重新构建相同的软件包。

1、安装pip

  pip是安装并管理Python软件包的工具,可以用它来代替easy install工具。pip安装命令如下:

apt-get install python-setuptoolseasy_install pip

什么时候该用pip,什么时候该用apt-get呢?情况是这样的,如果你需要最新版本的python依赖包,你可以直接使用apt-get,在项目突然需要使用旧版本的依赖包时,你就可以使用virtualenv和pip来使完美得再安装上一个旧版本的依赖包;

2、安装virtualenv和virtualenvwrapper

easy_install virtualenveasy_install virtualenvwrapper

安装完成后,需要在系统中添加virtualenvwrapper的环境变量,在~/.bashrc文件中的最后添加路径如下

source "/usr/local/bin/virtualenvwrapper.sh"
export WORKON_HOME="/opt/virtual_env/"

3、关于virtualenv使用

(1) 首先创建一个虚拟环境

virtualenv python_env

系统在预设虚拟环境时,默认的会依赖系统环境中的包,如果不想依赖西戎的包,可以加上 --no-site-packages 来建立虚拟环境即

virtualenv --no-site-packages python_env

(2)启动虚拟环境

进入到虚拟环境的目录下,使用命令

source bin/active

可以看到,在最前面多了一个虚拟环境的名称,说明虚拟环境已经开始运行了。

(3)在虚拟环境安装新的Python 套件

安装套件的命令为

pip install [套件名称]

如果想要避免pip在没有进入虚拟环境时被使用,可以在~/.bashrc加上:

export PIP_REQUIRE_VIRTUALENV=true

要求pip一定要在虚拟环境中执行。

也可以用下面的设定,让系统的pip自动使用启动中的虚拟环境。

export PIP_RESPECT_VIRTUALENV=true

避免意外将套件安装至系统环境。

(4)退出虚拟环境

  在命令中输入

deactivate

  即可推出虚拟环境。

4、关于virtualenvwrapper的使用

Virtualenvwrapper 是一个Virtualenv 的扩展,可使虚拟环境的管理变得更容易。

详细来说,Virtualenvwrapper 提供下述功能:

  1. 将所有的虚拟环境整合在一个目录下。
  2. 管理(新增、移除、复制)所有的虚拟环境。
  3. 可以使用一个命令切换虚拟环境。
  4. Tab 补全虚拟环境的名字。
  5. 每个操作都提供允许使用者自订的hooks。
  6. 可撰写容易分享的extension plugin 系统。

使用如下:

使用命令mkvirtualenv可以进行一次性装配

mkvirtualenv [-i package] [-r requirements_file] [virtualenv options] ENVNAME

  当然也可以一步步来,首先创建虚拟环境

  然后可以看到在~/.virtualenvs的文件下创建了一个虚拟环境,我们可以如virtualenv一样去文件加下激活,但是这样就比较麻烦,virtualenvwrapper提供了一个非常有用的激活命令workon来进行激活,我们可以直接使用命令进行激活。

workon 要激活的环境名

除此之外,virtualenvwrapper还提供了一些其他的命令方便我们使用:

(1)虚拟环境列出指令

lsvirtualenv [-b] [-l] [-h]

  其中-b是简短模式;-l是详细模式(预设);-h是印出help资讯。

(2)复制虚拟环境指令

cpvirtualenv ENVNAME TARGETENVNAME

  

(3)移除虚拟环境指令

rmvirtualenv ENVNAME

  

还有更多指令请查看查考手册。

 

3、安装图像处理工具PIL

  python图像库(PIL)为python提供了强大的图像处理能力,PIL支持的文件格式相当广泛,其特性有快速数据访问、点运算、滤波、图像缩放、旋转、任意仿射转换等。

使用命令

apt-get install python-PIL

即可安装。

有一个专门针对PIL编写的在线手册,可以查看链接学习。

4、安装requests模块

  我们需要的大部分数据都可以同通过HTTP或类似协议得到,因此,我们需要一些工具来实现数据访问,虽然python提供的urllib2提供了访问远程资源的能力,但是该模块完成基础任务的工作量较大。Request封装了HTTP1.1的内容,并提供了新的API,仅在需要实现非默认访问的情况下才需要暴露相关内容。安装用

apt-get install python-requests

  下面为一个requtests的使用小例子(运行环境python3.4):

import requests
r = requests.get('http://github.com/timeline.json')
print(r.content)

  运行结果如下:

本例中,是向github站的URI发送HTTP GET请求,以JSON格式返回了GITHub网站的活动时间表。在成功读取HTTP响应后,对象r包含了HTTP响应内容以及其他属性信息(HTTP状态码、cookie、HTTP头元数据,甚至包括当前响应所对应的请求信息。

5、在代码中配置matplotlib参数

  在matplotlib的配置文件.rc文件中,已经为大部分属性提供了默认值,这里讲解下如何在代码中配置matplot参数。

  在代码执行过程中,有两种方法运行参数:使用字典(rcParams)或调用matplotlib.rc()命令进行更改。第一种方式,可以通过rcParams访问修改所有已经加载的配置项,第二种方式中,可以通过向matplotlib.rc()传入属性的关键字元元组来修改配置项。

  如果要修改重置动态修改后的配置参数,可以调用matplotlib.rcdefaults()将配置重置为标准设置。

  下面通过两段代码延时之前介绍的功能

使用matplotlib.rcParams的例子

import matplotlib as mpl
mpl.rcParams['lines.linewidth'] = 2
mpl.rcParams['lines.color'] = 'y'

使用matplotlib.rc()函数的例子。

import matplotlib as mpl
mpl.rc('lines',linewidth=2,color='r')

  上面两个例子具有相同的作用,第二个例子中,我们设定后续的所有线条宽度为2个点,第一个例子中的最后一条语句表面光,语句之后的所有线条的衍射均为红色,除非本地覆盖他。下面给出一个实际应用的例子。

import matplotlib.pyplot as plt
import numpy as npt=np.arange(0.0,1.0,0.01)
s=np.sin(2*np.pi*t)plt.rcParams['lines.color'] = 'r'
plt.plot(t,s)
c=np.cos(2*np.pi*t)
plt.rcParams['lines.linewidth'] = '3'
plt.plot(t,c)
plt.show()

  使用python test.py运行上面的test.py程序,运行结果如下:

6、为项目设置matplotlib参数

  如果不想每次使用matplot时都在代码开始部分进行分配,就需要为不同的项目设定不同的默认配置项。假设一个项目对于matplot的特性参数总会设置相同的值,就没有必要每次编写新的绘图代码时都进行相同的配置。取而代之的,应该是在代码之外,使用一个永久的文件设定matplotlib参数默认值。

  通过matplotlibrc来配置文件。配置文件在三个不同位置,而他们的位置决定了他们的应用范围,三个位置的说明如下:

  当前目录:即代码运行的目录。在当前目录下,可以为目录所包含的当前项目定制matplotlib配置项。配置文件的名称为matplotlibrc。

  用户级.matplotlib/matplotlibrc文件:通常在用户的$HOME目录下。可以用matplotlib.get_configdir()命令来找到当前用户的配置文件目录。

  安装级配置文件:通常在python的site-packages目录下。这是系统级配置,不过在每次重新安装matplotlib后,覆盖文件会被覆盖。因此如果希望保持持久有效的配置,最好选择在用户级配置文件中进行设置。目前对本配置文件的最佳应用方式,是将其作为默认配置模板。如果在用户级配置文件已经比较混乱,或者需要为新项目做全新配置时,可以基于该配置文件进行配置。

  在shell中运行以下命令,即可打印出配置文件目录的位置:

python -c 'import matplotlib as mpl; print mpl.get_configdir()'

配置文件包括以下配置项:

  axes:设置坐标轴边界和表面的颜色、坐标刻度大小和网格的显示。

  backend:设置目标输出TKAgg和GTKAgg。

  figure:控制dpi、边界颜色、图形大小和子区设置。

  font:字体集,字体大小和样式设置。

  grid:设置网格颜色和线型。

  legend:设置图例和其中文本的显示。

  line:设置线条(颜色、线性、宽度等)和标记。

  patch:填充2D空间的图形对象,如多边形和圆。控制线宽、颜色和抗锯齿设置等。

  savefig:可以对保存的图形进行单独设置。

  text:设置字体颜色、文本解析等。

  verbose:设置matplotlib在执行期间信息输出,如silent、helpful、debug和debug-annoying。

  xticks和yticks:为x、y轴的主刻度和次刻度设置颜色、大小、方向以及标签大小。

参考资料

MATPLOTLIB

关于在Ubuntu下安装配置numpy,scipy,matplotlibm,pandas 以及sklearn

Python: Ubuntu 安装numpy,scipy,matplotlib

Python 的虛擬環境及多版本開發利器─Virtualenv 與 Pythonbrew

http://effbot.org/

转载于:https://www.cnblogs.com/noticeable/p/8933753.html

ubuntu下搭建一个数据化处理的开发环境相关推荐

  1. ubuntu下搭建eclipse+tomcat的web开发环境

    之前是打算给eclipse装上插件变成eclipse for javaEE 的,后来一看过程太麻烦了,直接下载eclipse for java EE 算了.搭建eclipse+tomcat的web开发 ...

  2. Doom Emacs入门:通过Doom Emacs框架搭建一个基本的Python开发环境及其基本操作

    Doom Emacs入门:通过Doom Emacs框架搭建一个基本的Python开发环境及其基本操作 一.写在前面 1.1 明确目标:搭建一个完整的Python开发环境 1.2 前置工作 二.Doom ...

  3. 前端自动化构建工具:用Gulp4.0搭建一个基本的前端开发环境

    一个项目的完成一般需要经过三个步骤:初始化.开发和部署.在前端开发过程中,我们经常需要依靠一些自动化构建工具来优化前端工作流程,来帮助我们完成一系列繁琐的工作,例如浏览器热更新.ES6编译.代码压缩. ...

  4. Fedora12下搭建Qt Creator的ARM开发环境 并 移植Qt4.6.2到Micro2440

    Fedora12下搭建Qt Creator的ARM开发环境 并 移植Qt4.6.2到Micro2440 参考: http://hi.baidu.com/jiyeqian/blog/item/f46d2 ...

  5. Fedora9 下搭建Qt Creator的ARM开发环境并移植Qt4.6.3-books到mini2440

    Fedora9 下搭建Qt Creator的ARM开发环境并移植Qt4.6.3-books到mini2440 分类: LINUX 2011-10-18 16:44:56 因为在搭建ARM的qte环境时 ...

  6. java完整开发环境搭建_如何搭建一个完整的Java开发环境

    这篇文章主要教大家如何搭建一个完整的Java开发环境,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 作为一个Java程序员,配置一个java开发环境是必备的技能,今天给广大菜鸟初学者补上一课.环境 ...

  7. Ubuntu下安装Stm32的Eclipse的开发环境(1)

    转载地址 https://blog.csdn.net/zhengyangliu123/article/details/56670282 STM32高级开发(15)-使用eclipse开发STM32 版 ...

  8. ubuntu下使用ppa安装codeblocks集成开发环境

    codeblocks是一个十分优秀的C/C++开发IDE,虽然后起之秀codelite目前来看大有超越之势哦. 不过在ubuntu下安装codeblocks却比较麻烦,不像其他linux发行版,比如s ...

  9. win7 下搭建基于jdk1.7 android开发环境

    某系统要配套做一个android客户端,来一次android开发环境快速搭建,系统Win7,具体步骤如下: 1.下载jdk:http://www.oracle.com/technetwork/java ...

最新文章

  1. 经验模式分解EMD算法原理
  2. Mysqldump: Got Errno 32 On Write 和ambiguous redirect错误的解决办法
  3. 处理Windows 7爆音杂音和网游ping值过高
  4. 一看数分就想写个程序玩玩。。。
  5. 多小区下小区上行速率的计算(5)
  6. git学习笔记(1-集中式与分布式版本控制工具对比)
  7. c语言中动态内存分配的作用,C语言中动态内存的分配(malloc,realloc)
  8. DllMain 用法
  9. 泰勒展开式推导梯度下降
  10. 大白话C++:新手入门教程(附源码及详解、视频课程资料推荐)
  11. U盘文件夹为空恢复方法,恢复U盘的空白文件夹
  12. 技术牛人---章文嵩博士---做系统要先了解业务的需求
  13. 内网映射软件之80端口映射和全端口映射实现发布网站访问内网
  14. C语言二级必须编译吗,c语言是计算机二级吗
  15. html创建关联程序,如何在控制面板中创建电子邮件默认程序关联
  16. Word如何取消打印前自动更新域
  17. 英语语法最终珍藏版笔记-2关于动词时态的几点说明
  18. QQ/微信/支付宝 收款码 美化的教程 超级好看
  19. 10w 行级别Excel数据量导入优化记录
  20. 虾皮选品工具 教你几个免费选品技巧

热门文章

  1. 通过远程桌面操作程序出现hook cannot be created(SendKeys语句错误)的解决
  2. 黄忠---忠心不二主
  3. 图解用NetCat连接远程端口
  4. 组件通信 Provideinject
  5. 【BZOJ5335】【TJOI2018】—智力竞赛(floyd传递闭包+二分图匹配)
  6. ArrayList add(int index,E element)
  7. linux初级学习笔记七:linux用户管理,密码和组命令详解!(视频序号:04_1)
  8. 在 OpenGL ES 2.0 上实现视差贴图(Parallax Mapping)
  9. 【leetcode】3 minstack
  10. windows下用QTwebkit解析html