Python matplotlib笔记
可视化的工具有很多,如Tableau,各种JS框架,我个人感觉应该是学JS最好,因为JS不需要环境,每个电脑都有浏览器,而像matplotlib需要Python这样的开发环境,还是比较麻烦的,但是毕竟用Python处理数据,本文还是要写点自己的学习笔记的,当然知道画什么最重要(我并不知道-。-)!
尽量画二维,不用三维。如果年龄和岁数的二维图,多了薪水,可以让高薪水的点画大的点,颜色深点。
文本可视化(word cloud词图,theme flow标签的量,情感可视化 积极的消极的等等)
时序可视化(金融时间序列)
高维可视化,平行坐标方法,不像笛卡尔坐标x,y轴垂直。
如图通过线的连接来体现。
社交网络图可视化。
科学性可视化,高性能计算里很常见,体量特别大,如台风,云的移动实时渲染。
Matplotlib
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(-1,2,50)
y = 2*x + 2
y2 = x**2 plt.xlim((-1,2)) #x,y的范围
plt.ylim((-2,3))
plt.xlabel('I am x') #设置坐标轴的名字
plt.ylabel('I am y') l1, = plt.plot(x,y,color = 'red',linewidth = 1.0 ,linestyle = '--',label='up') #legend为设置图例,如果要传handle l1,l2必须加逗号,labels可以覆盖l1,l2中的名字,
l2, = plt.plot(x,y2,label = 'down') #loc 可以是best让他自己选,也可以自己设置
plt.legend(handles = [l1,l2],labels = ['aaa','bbb'],loc = 'best')
# plt.show() new_ticks = np.linspace(-1,2,5)
plt.xticks(new_ticks)
plt.yticks([-2.-1.5,-1,1,3],[r'really bad',r'bad',r'normal',r'good',r'really good'])
# plt.show() ax = plt.gca()
ax.spines['right'].set_color('none') #四个框,设置右边,和上边的框为无色
ax.spines['top'].set_color('none')
ax.xaxis.set_ticks_position('bottom')
ax.yaxis.set_ticks_position('left')
ax.spines['bottom'].set_position(('data',-1))
ax.spines['left'].set_position(('data',0))
plt.show()
其实Matplotlib的图像都位于一个Figure画布之中,plt.figure用于创建一个新的画布。而我上面并没有plt.figure,而是直接plt.plot,那是因为plot会通过plt.gca()来获得当前axes对象,如果没有则自动创建,再调用axes对象的plot的方法来画图。对于pyplot,它保存了当前的图表和子图信息,可以通过plt.gcf(get current figure)和plt.gca(get current axes), 函数都是对当前的figure或者axes对象处理的。
可以参考http://www.cnblogs.com/nju2014/p/5620776.html(详解图像各个部分)
以及http://www.cnblogs.com/NaughtyBaby/p/5533855.html
关于各类的柱状,散点之类的图http://www.cnblogs.com/jasonfreak/p/5441512.html(用python进行描述性统计)
Python matplotlib笔记的更多相关文章
- OpenCV之Python学习笔记
OpenCV之Python学习笔记 直都在用Python+OpenCV做一些算法的原型.本来想留下发布一些文章的,可是整理一下就有点无奈了,都是写零散不成系统的小片段.现在看 到一本国外的新书< ...
- Python机器学习笔记:使用Keras进行回归预测
Keras是一个深度学习库,包含高效的数字库Theano和TensorFlow.是一个高度模块化的神经网络库,支持CPU和GPU. 本文学习的目的是学习如何加载CSV文件并使其可供Keras使用,如何 ...
- Python机器学习笔记:sklearn库的学习
网上有很多关于sklearn的学习教程,大部分都是简单的讲清楚某一方面,其实最好的教程就是官方文档. 官方文档地址:https://scikit-learn.org/stable/ (可是官方文档非常 ...
- Deep learning with Python 学习笔记(10)
生成式深度学习 机器学习模型能够对图像.音乐和故事的统计潜在空间(latent space)进行学习,然后从这个空间中采样(sample),创造出与模型在训练数据中所见到的艺术作品具有相似特征的新作品 ...
- Deep learning with Python 学习笔记(7)
介绍一维卷积神经网络 卷积神经网络能够进行卷积运算,从局部输入图块中提取特征,并能够将表示模块化,同时可以高效地利用数据.这些性质让卷积神经网络在计算机视觉领域表现优异,同样也让它对序列处理特别有效. ...
- Deep learning with Python 学习笔记(6)
本节介绍循环神经网络及其优化 循环神经网络(RNN,recurrent neural network)处理序列的方式是,遍历所有序列元素,并保存一个状态(state),其中包含与已查看内容相关的信息. ...
- Deep learning with Python 学习笔记(5)
本节讲深度学习用于文本和序列 用于处理序列的两种基本的深度学习算法分别是循环神经网络(recurrent neural network)和一维卷积神经网络(1D convnet) 与其他所有神经网络一 ...
- Deep learning with Python 学习笔记(4)
本节讲卷积神经网络的可视化 三种方法 可视化卷积神经网络的中间输出(中间激活) 有助于理解卷积神经网络连续的层如何对输入进行变换,也有助于初步了解卷积神经网络每个过滤器的含义 可视化卷积神经网络的过滤 ...
- Deep learning with Python 学习笔记(3)
本节介绍基于Keras的使用预训练模型方法 想要将深度学习应用于小型图像数据集,一种常用且非常高效的方法是使用预训练网络.预训练网络(pretrained network)是一个保存好的网络,之前已在 ...
随机推荐
- [连载]《C#通讯(串口和网络)框架的设计与实现》- 13.中英文版本切换设计
目 录 第十三章 中英文版本切换设计... 2 13.1 不用自带的资源文件的理由... 2 13.2 配置文件... 2 13.3 语言 ...
- 在QMainWindow中利用多个QDockWidget构成标签页tab(原创)
功能描述: 在QMainWindow下,使用多个QDockWidget构成可切换,可拖动,可关闭的标签页:标签页的切换由相关联的QAction触发. 实现效果: 代码如下: QDockWidget * ...
- 将语音搜索集成到Google Now中
原文标题:Use Voice Search to integrate with Google Now 原文链接:http://antonioleiva.com/voice_search_google_ ...
- Markdown学习
1. Markdown介绍 Markdown是一种轻量级的标记语言,它语法简单并且易读易用.Mardown文件通常以.md后缀结尾. 2. Markdown优点 纯文本格式,兼容性极强,可以用任意文本 ...
- ReactiveCocoa 冷热订阅(cold subscribe, hot subscribe)
ReactiveCocoa支持两种订阅方式,一种是冷订阅,一种是热订阅. 热订阅的特点: 1.不管有没有消息订阅着,发送者总会把消息发出去. 2.不管订阅者是什么时候订阅的,发送者总是会把相同的消息发 ...
- 浅谈Android编码规范及命名规范
前言: 目前工作负责两个医疗APP项目的开发,同时使用LeanCloud进行云端配合开发,完全单挑. 现大框架已经完成,正在进行细节模块上的开发 抽空总结一下Android项目的开发规范:1.编码规范 ...
- (十)Maven依赖详解
1.何为依赖? 比如你是个男的,你要生孩子,呸呸呸...男的怎么生孩子,所以你得依赖你老婆,不过也不一定咯,你也可以依赖其她妹子. 我们在平时的项目开发中也是同理,你需要依赖一些东西才能实现相应的功能 ...
- mac,/usr/local is not writable 解决方法
mac,/usr/local is not writable 解决方法 mac 问题 今天在mac上装mongodb,发现提示权限不足问题,错误提示如下: mac安装mongodb错误提示.jpg 尝 ...
- linux 安装mysql数据库——yum安装法
mysql数据库有多种安装方式,本文只介绍在Linux服务器上最实用.最快捷的mysql server安装方法.一.Linux服务器yum安装(CentOS6.3 64位) 所有在服务器上执行的命令, ...
- 浅谈Virtual Machine Manager(SCVMM 2012) cluster 过载状态检测算法
在我们使用scvmm2012的时候,经常会看到群集状态变成了这样 点开看属性后,我们发现是这样 . 发现了吗?Over-committed,如果翻译过来就是资源过载,或者说资源过量使用了,那么这个状态 ...