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)是一个保存好的网络,之前已在 ...
随机推荐
- 四种解析和创建方式(DOM,SAX,DOM4J,JDOM)
一.先导入jar包 DOM基于树形,SAX基于事件,DOM4J和JDOM基于底层API 二.代码如下 1 package com.sxt.test; import java.io.File; impo ...
- elasticsearch高级配置二----线程池设置
一个Elasticsearch节点会有多个线程池,但重要的是下面四个: 索引(index):主要是索引数据和删除数据操作(默认是cached类型) 搜索(search):主要是获取,统计和搜索操作(默 ...
- jdk顺序表笔记
一.AbstractCollection 提供了集合的最大实现 继承该类,必须实现size()和iterator(),因为该类操作集合都是通过iterator 二.fail-fast策略 该策略在集合 ...
- tomcat项目中文乱码问题解决方法
在部署tomcat项目时经常会遇到中文乱码问题,解决的方法可参考以下步骤. 1.更改Tomcat安装目录下的conf\server.xml,指定浏览器的编码格式为"utf-8"格式 ...
- arcgis api for js共享干货系列之二自定义Navigation控件样式风格
arcgis api for js默认的Navigation控件样式风格如下图: 这样的风格不能说不好,各有各的爱好,审美观,这里也不是重点,这里的重点是如何自定义一套自己喜欢的样式风格呢:自己自定义 ...
- safari 浏览器window.history.go(-1)运行无效解决办法
这几天做了几个手机端app的wap页面,做完之后发现一个问题,那就是ios系统下的safari浏览器不支持window.history.go(-1)..无语... 解决方法很简单!加上return f ...
- 嵌入式:J-link刷固件(坑)
1.上电,短接ERASE,>10秒后,拔USB. 2.短接TST,上电,>10秒后,拔USB. 3.安装驱动.(看别人教程,下载到INF文件,WIN7不能右击安装,好,换虚拟机XP) 4. ...
- Google C++单元测试框架GoogleTest(总)
之前一个月都在学习googletest框架,对googletest的文档都翻译了一遍,也都发在了之前的博客里,另外其实还有一部分的文档我没有发,就是GMock的CookBook部分:https://g ...
- Struts2初始(一)
1.过滤器:org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter位置:在struts2的核心包struts2-co ...
- Laravel大型项目系列教程(五)之文章和标签管理
一.前言 本节教程将大概完成文章和标签管理以及标签关联. 二.Let's go 1.文章管理 首先创建管理后台文章列表视图: $ php artisan generate:view admin.art ...