标准的Python中用列表(list)保存一组值,可以当作数组使用。但由于列表的元素可以是任何对象,因此列表中保存的是对象的指针。这样一来,为了保存一个简单的列表[1,2,3],就需 
要有三个指针和三个整数对象。对于数值运算来说,这种结构显然比较浪费内存和 CPU 计算时间。

使用numpy的array模块可以解决这个问题。细节不在此赘述。这里主要记录一些matplotlib的基本使用方法

first plot
#first plot with matplotlib

import matplotlib.pyplot as plt

plt.plot([1,3,2,4])

plt.show()

in order to avoid pollution of global namespace, it is strongly recommended to never import like:

from import *

simple plot
import matplotlib as mpl

import matplotlib.pyplot as plt

import numpy as np

x = np.arange(0.0,6.0,0.1)

plt.plot(x, [xi**2 for xi in x],label = 'First',linewidth = 4,color = 'black')

plt.plot(x, [xi**2+2 for xi in x],label = 'second',color = 'red')

plt.plot(x, [xi**2+5 for xi in x],label = 'third')

plt.axis([0,7,-1,50])

plt.xlabel(r"$\alpha$",fontsize=20)

plt.ylabel(r'y')

plt.title('simple plot')

plt.legend(loc = 'upper left')

plt.grid(True)

plt.savefig('simple plot.pdf',dpi = 200)

print mpl.rcParams['figure.figsize']       #return 8.0,6.0

print mpl.rcParams['savefig.dpi']          #default to 100              the size of the pic will be 800*600

#print mpl.rcParams['interactive']

plt.show()

Python-3

Decorate plot with styles and types
import matplotlib as mpl

import matplotlib.pyplot as plt

import numpy as np

x = np.arange(0.0,6.0,0.1)

plt.plot(x, [xi**2 for xi in x],label = 'First',linewidth = 4,color = 'black')   #using color string to specify color

plt.plot(x, [xi**2+2 for xi in x],'r',label = 'second')                          #using abbreviation to specify color

plt.plot(x, [xi**2+5 for xi in x],color = (1,0,1,1),label = 'Third')             #using color tuple to specify color

plt.plot(x, [xi**2+9 for xi in x],color = '#BCD2EE',label = 'Fourth')             #using hex string to specify color

plt.xticks(np.arange(0.0,6.0,2.5))

plt.xlabel(r"$\alpha$",fontsize=20)

plt.ylabel(r'y')

plt.title('simple plot')

plt.legend(loc = 'upper left')

plt.grid(True)

plt.savefig('simple plot.pdf',dpi = 200)

print mpl.rcParams['figure.figsize']       #return 8.0,6.0

print mpl.rcParams['savefig.dpi']          #default to 100              the size of the pic will be 800*600

#print mpl.rcParams['interactive']

plt.show(

 
image

types of graph
  • 2


image

Bars

import matplotlib.pyplot as plt 

import numpy as np 

dict = {'A': 40, 'B': 70, 'C': 30, 'D': 85} 

for i, key in enumerate(dict): plt.bar(i, dict[key]);

plt.xticks(np.arange(len(dict))+0.4, dict.keys());

plt.yticks(dict.values());

plt.grid(True)

plt.show()


image_1

Pies

import matplotlib.pyplot as plt 

plt.figure(figsize=(10,10));

x = [4, 9, 21, 55, 30, 18] 

labels = ['Swiss', 'Austria', 'Spain', 'Italy', 'France', 

'Benelux'] 

explode = [0.2, 0.1, 0, 0, 0.1, 0] 

plt.pie(x, labels=labels, explode=explode, autopct='%1.1f%%'); 

plt.show()

image_2

Scatter

import matplotlib.pyplot as plt

import numpy as np

x = np.random.randn(12,20)

y = np.random.randn(12,20)

mark = ['s','o','^','v','>','<','d','p','h','8','+','*']

for i in range(0,12):

    plt.scatter(x[i],y[i],marker = mark[i],color =(np.random.rand(1,3)),s=50,label = str(i+1))

plt.legend()

plt.show()

matplotlib 常用操作的更多相关文章

  1. matplotlib常用操作2

    关于matplotlib学习还是强烈建议常去官方http://matplotlib.org/contents.html里查一查各种用法和toturial等. 下面是jupyter notebook代码 ...

  2. matplotlib常用操作

    1.根据坐标点绘制: import numpy as np import matplotlib.pyplot as plt x = np.array([1,2,3,4,5,6,7,8]) y = np ...

  3. 二叉树的python可视化和常用操作代码

    二叉树是一个重要的数据结构, 本文基于"二叉查找树"的python可视化 pybst 包, 做了一些改造, 可以支持更一般的"二叉树"可视化. 关于二叉树和二叉 ...

  4. 【三】用Markdown写blog的常用操作

    本系列有五篇:分别是 [一]Ubuntu14.04+Jekyll+Github Pages搭建静态博客:主要是安装方面 [二]jekyll 的使用 :主要是jekyll的配置 [三]Markdown+ ...

  5. php模拟数据库常用操作效果

    test.php <?php header("Content-type:text/html;charset='utf8'"); error_reporting(E_ALL); ...

  6. Mac OS X常用操作入门指南

    前两天入手一个Macbook air,在装软件过程中摸索了一些基本操作,现就常用操作进行总结, 1关于触控板: 按下(不区分左右)            =鼠标左键 control+按下        ...

  7. mysql常用操作语句

    mysql常用操作语句 1.mysql -u root -p   2.mysql -h localhost -u root -p database_name 2.列出数据库: 1.show datab ...

  8. nodejs配置及cmd常用操作

    一.cmd常用操作 1.返回根目录cd\ 2.返回上层目录cd .. 3.查找当前目录下的所有文件dir 4.查找下层目录cd window 二.nodejs配置 Node.js安装包及源码下载地址为 ...

  9. Oracle常用操作——创建表空间、临时表空间、创建表分区、创建索引、锁表处理

    摘要:Oracle数据库的库表常用操作:创建与添加表空间.临时表空间.创建表分区.创建索引.锁表处理 1.表空间 ■  详细查看表空间使用状况,包括总大小,使用空间,使用率,剩余空间 --详细查看表空 ...

随机推荐

  1. Linux 反弹shell(二)反弹shell的本质

    Linux 反弹shell(二)反弹shell的本质 from:https://xz.aliyun.com/t/2549 0X00 前言 在上一篇文章 Linux反弹shell(一)文件描述符与重定向 ...

  2. 过采样中用到的SMOTE算法

    平时很多分类问题都会面对样本不均衡的问题,很多算法在这种情况下分类效果都不够理想.类不平衡(class-imbalance)是指在训练分类器中所使用的训练集的类别分布不均.比如说一个二分类问题,100 ...

  3. Java中使用BufferedReader的readLine()方法和read()方法来读取文件内容

    目标:读文件 编程时,有很多时候需要读取本地文件,下面介绍一下读取方式: 读单行文件 package com; import java.io.*; import java.util.ArrayList ...

  4. The 2018 ACM-ICPC CCPC 宁夏 A-Maximum Element In A Stack

    题意 对一个栈有入栈和出栈两种操作,求每次操作后栈的最大值的异或. 题目链接 分析 类似于单调栈,但是还没有那么复杂. 只需保持栈顶为最大值,如果入栈元素小于栈顶元素,则重复一次栈顶元素入栈:否则,直 ...

  5. LightOJ - 1170 - Counting Perfect BST(卡特兰数)

    链接: https://vjudge.net/problem/LightOJ-1170 题意: BST is the acronym for Binary Search Tree. A BST is ...

  6. babyheap_fastbin_attack

    babyheap_fastbin_attack 首先检查程序保护 保护全开.是一个选单系统 分析程序 void new() { int index; // [rsp+0h] [rbp-10h] sig ...

  7. H3CNE学习6 静态路由

    一.相应命令 1.查看路由表 2.直连路由 3.静态路由配置 4.路由器转发数据包 二.静态路由2 1.路由优先级 管理距离即优先级,值越小就越优先 2.路由度量 如果上下都是使用的相同的路由协议那么 ...

  8. 【MongoDB】在C#中使用

    一.MongoClient类 在2.10.0版本中引入了MongoClient类,同时在其API中也说明了Mongo类会在将来的版本中被MongoClient替换(Note: This class h ...

  9. lixuxmint系统定制与配置(3)-字体

    小书匠Linux 有些系统自带的字体实在太难看了,看起来不清晰,不明确,有一个好的字体,可以带来好心情,并提高工作与效率. 1.常用中文字体 文泉驿微黑,微软雅黑,思源黑体 2.字体安装 2.1检查已 ...

  10. UOJ46 【清华集训2014】玄学 【时间线段树】

    题目链接:UOJ 这题的时间线段树非常的妙. 对时间建立线段树,修改的时候在后面加,每当填满一个节点之后就合并进它的父亲. 对于一个节点维护序列,发现这是一个分段函数,合并就是归并排序.于是就形成了差 ...