可视化的工具有很多,如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笔记的更多相关文章

  1. OpenCV之Python学习笔记

    OpenCV之Python学习笔记 直都在用Python+OpenCV做一些算法的原型.本来想留下发布一些文章的,可是整理一下就有点无奈了,都是写零散不成系统的小片段.现在看 到一本国外的新书< ...

  2. Python机器学习笔记:使用Keras进行回归预测

    Keras是一个深度学习库,包含高效的数字库Theano和TensorFlow.是一个高度模块化的神经网络库,支持CPU和GPU. 本文学习的目的是学习如何加载CSV文件并使其可供Keras使用,如何 ...

  3. Python机器学习笔记:sklearn库的学习

    网上有很多关于sklearn的学习教程,大部分都是简单的讲清楚某一方面,其实最好的教程就是官方文档. 官方文档地址:https://scikit-learn.org/stable/ (可是官方文档非常 ...

  4. Deep learning with Python 学习笔记(10)

    生成式深度学习 机器学习模型能够对图像.音乐和故事的统计潜在空间(latent space)进行学习,然后从这个空间中采样(sample),创造出与模型在训练数据中所见到的艺术作品具有相似特征的新作品 ...

  5. Deep learning with Python 学习笔记(7)

    介绍一维卷积神经网络 卷积神经网络能够进行卷积运算,从局部输入图块中提取特征,并能够将表示模块化,同时可以高效地利用数据.这些性质让卷积神经网络在计算机视觉领域表现优异,同样也让它对序列处理特别有效. ...

  6. Deep learning with Python 学习笔记(6)

    本节介绍循环神经网络及其优化 循环神经网络(RNN,recurrent neural network)处理序列的方式是,遍历所有序列元素,并保存一个状态(state),其中包含与已查看内容相关的信息. ...

  7. Deep learning with Python 学习笔记(5)

    本节讲深度学习用于文本和序列 用于处理序列的两种基本的深度学习算法分别是循环神经网络(recurrent neural network)和一维卷积神经网络(1D convnet) 与其他所有神经网络一 ...

  8. Deep learning with Python 学习笔记(4)

    本节讲卷积神经网络的可视化 三种方法 可视化卷积神经网络的中间输出(中间激活) 有助于理解卷积神经网络连续的层如何对输入进行变换,也有助于初步了解卷积神经网络每个过滤器的含义 可视化卷积神经网络的过滤 ...

  9. Deep learning with Python 学习笔记(3)

    本节介绍基于Keras的使用预训练模型方法 想要将深度学习应用于小型图像数据集,一种常用且非常高效的方法是使用预训练网络.预训练网络(pretrained network)是一个保存好的网络,之前已在 ...

随机推荐

  1. 使用java泛型设计通用方法

    泛型是Java SE 1.5的新特性, 泛型的本质是参数化类型, 也就是说所操作的数据类型被指定为一个参数. 因此我们可以利用泛型和反射来设计一些通用方法. 现在有2张表, 一张user表和一张stu ...

  2. jquery对单选和下拉框的操作

    jquery 对表单的操作: 对单选框的操作: 一.对单选框的操作: 1.$('input

  3. Java面试基础概念总结

    面向对象软件开发的优点有哪些? 答:开发模块化,更易维护和修改:代码之间可以复用:增强代码的可靠性.灵活性和可理解性. 多态的定义? 答:多态是编程语言给不同的底层数据类型做相同的接口展示的一种能力. ...

  4. 关于IOS中safari下的select下拉菜单,文字过长不换行的问题

    今天遇到下图这种问题,文字过长,显示不全.折腾了老半天,在网上搜了半天也找不到解决方案. 于是问了下同事,同事提到了<optgroup>,这个标签厉害. <optgroup> ...

  5. 12款简化 Web 开发的 JavaScript 开发框架

    前端框架简化了开发过程中,像 Bootstrap 和 Foundation 就是前端框架的佼佼者.在这篇文章了,我们编制了一组新鲜的,实用的,可以帮助您建立高质量的 Web 应用程序的 JavaScr ...

  6. Centos6.2设置静态ip和dns

    参考了如下文章:https://gist.github.com/fernandoaleman/2172388http://www.lifelinux.com/how-to-configure-stat ...

  7. iOS - 分析JSON、XML的区别和解析方式的底层是如何实现的(延伸实现原理)

    <分析JSON.XML的区别,JSON.XML解析方式的底层是如何实现的(延伸实现原理)> (一)JSON与XML的区别: (1)可读性方面:基本相同,XML的可读性比较好: (2)可扩展 ...

  8. Java 策略模式和状态模式

    本文是转载的,转载地址:大白话解释Strategy模式和State模式的区别 先上图: 本质上讲,策略模式和状态模式做得是同一件事:去耦合.怎么去耦合?就是把干什么(语境类)和怎么干(策略接口)分开, ...

  9. IOS 杂笔-15(知识小点 readonly)

    readonly是我们并不陌生的属性. 但是他也有值得我们注意的地. 属性如其名-只读-也就是说我们只能读取-不能进行写操作 当我们尝试进行写操作时会如下 但是这并不意味着我们不可以改变其内部的属性 ...

  10. AngularJS HTML DOM& 事件

    AngularJS 为 HTML DOM 元素的属性提供了绑定应用数据的指令. ng-disabled 指令直接绑定应用程序数据到 HTML 的 disabled 属性 <div ng-app= ...