Python基础 — Matplotlib
Matplotlib -- 简介
matplotlib是Python优秀的数据可视化第三方库;
matplotlib库的效果可参考官网:http://matplotlib.org/gallery.html ;
matplotlib的使用 由各种可视化类构成,内部结构复杂,受matlab库启发,matplotlab.pyplot是绘制种类可视化图形的命令子库,相当于快捷方式。
matplotlib可以绘制的图
Matplotlib -- 绘图函数
1、plot函数
plt.plot(x,y,format_string,**kwargs)
参数:
x:X轴数据,列表或数组,可选;
y:Y轴数据,列表或数组;
format_string:控制曲线的格式字符串,由颜色字符、风格字符和标识字符组成,可选;
**kwargs:第二组或更多的(x,y,format_string,**kwargs);
2、subplot()函数
plt.subplot(numRows, numCols, plotnum)
参数:
numRows : int ,指创建的sublots的行数,默认为1 ;
numCols : int ,指创建的sublots的列数,默认为1;
plotnum:指定操作的区域;
3、Matplotlib.pyplot常用的方法
| 方法 | 描述 |
|---|---|
| plt.savefig('filename',dpi=n) | 将绘制的图画保存成png格式,并设置分辨率,默认为100; |
| plt.axis([0,9,1,8]) | x轴起始于0,终止于9 ,y轴起始于1,终止于8 |
| plt.subplot(Rows, Cols, plotnum) | 分成Rows行Clos列,共R*C个绘图区域,在第plotnum个区域绘图。排序为行优先。 |
| plt.xlabel() | 对x轴增加文本标签 |
| plt.ylabel() | 对y轴增加文本标签 |
| plt.title() | 对图形整体增加文本标签 |
| plt.text() | 在任意位置增加文本 |
Matplotlib -- 画图种类
1、折线图(grid)
# 绘制折线图
import matplotlib.pyplot as plt
import numpy as np
x = np.arange(9)
y = np.sin(x)
z = np.cos(x)
# marker数据点样式,linewidth线宽,linestyle线型样式,color颜色
plt.plot(x, y, marker="*", linewidth=3, linestyle="--", color="orange")
plt.plot(x, z)
plt.title("matplotlib")
plt.xlabel("height")
plt.ylabel("width")
# 设置图例
plt.legend(["Y","Z"], loc="upper right")
plt.grid(True)
plt.show()
2、条形图(bar)
#绘制条形图
x = np.arange(10)
y = np.random.randint(0,30,10)
plt.bar(x, y)
plt.show()
3、饼图(pie)
#绘制饼图
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()
4、散点图(scatter)
#绘制散点图
x = np.random.rand(10)
y = np.random.rand(10)
plt.scatter(x,y)
plt.show()
5、直方图(hist)
#绘制直方图
mean, sigma = 0, 1
x = mean + sigma * np.random.randn(10000)
plt.hist(x,50)
plt.show()
6、坐标图(plot)
#绘制坐标图
import matplotlib.pyplot as plt
import numpy as np
#创建数据
x = np.linspace(-5, 5, 100)
y1 = np.sin(x)
y2 = np.cos(x)
#创建figure窗口
plt.figure(num=3, figsize=(8, 5))
#画曲线1
plt.plot(x, y1)
#画曲线2
plt.plot(x, y2, color='red', linewidth=5.0, linestyle='--')
#设置坐标轴范围
plt.xlim((-5, 5))
plt.ylim((-2, 2))
#设置坐标轴名称
plt.xlabel('xxxxxxxxxxx')
plt.ylabel('yyyyyyyyyyy')
#设置坐标轴刻度
my_x_ticks = np.arange(-5, 5, 0.5)
my_y_ticks = np.arange(-2, 2, 0.2)
plt.xticks(my_x_ticks)
plt.yticks(my_y_ticks)
#显示出所有设置
plt.show()
7、子图(subplot)
# figsize绘图对象的宽度和高度,单位为英寸,dpi绘图对象的分辨率,即每英寸多少个像素,缺省值为80
plt.figure(figsize=(8,6),dpi=100)
# subplot(numRows, numCols, plotNum)
# 一个Figure对象可以包含多个子图Axes,subplot将整个绘图区域等分为numRows行*numCols列个子区域,按照从左到右,从上到下的顺序对每个子区域进行编号
# subplot在plotNum指定的区域中创建一个子图Axes
A = plt.subplot(2,2,1)
plt.plot([0,1],[0,1], color="red")
plt.subplot(2,2,2)
plt.title("B")
plt.plot([0,1],[0,1], color="green")
plt.subplot(2,1,2)
plt.title("C")
plt.plot(np.arange(10), np.random.rand(10), color="orange")
# 选择子图A
plt.sca(A)
plt.title("A")
plt.show()
Matplotlib -- 作图线的属性
颜色(color 简写为 c):
| 颜色 | 字符 |
|---|---|
| 红色 | 'r' (red) |
| 蓝色 | 'b' (blue) |
| 绿色 | 'g' (green) |
| 黄色 | 'y' (yellow) |
| 黑色 | 'k' (black) |
| 白色 | 'w' (white) |
| 紫色 | 'm' (magenta) |
| 青色 | 'c' (cyan) |
| 灰色 | [0,1]内任意浮点数 |
| RGB表示法 | '#2F4F4F' 或 (0.18, 0.31, 0.31) |
线型(linestyle 简写为 ls):
| 线型 | 字符 |
|---|---|
| 点 | '.' |
| 点线 | ':' |
| 点画线 | '-.' |
| 实线 | '-' |
| 虚线 | '--' |
图形标记(标记marker):
| 形状 | 字符 |
|---|---|
| 圆形 | 'o' |
| 加号 | '+' |
| 星形 | '*' |
| 乘号 | 'x' |
| 方形 | 's' |
| 菱形 | 'D' |
Python基础 — Matplotlib的更多相关文章
- Python基础——matplotlib库的使用与绘图可视化
1.matplotlib库简介: Matplotlib 是一个 Python 的 2D绘图库,开发者可以便捷地生成绘图,直方图,功率谱,条形图,散点图等. 2.Matplotlib 库使用: 注:由于 ...
- python之matplotlib绘图基础
Python之matplotlib基础 matplotlib是Python优秀的数据可视化第三方库 matplotlib库的效果可参考 http://matplotlib.org/gallery.ht ...
- Python小白的发展之路之Python基础(一)
Python基础部分1: 1.Python简介 2.Python 2 or 3,两者的主要区别 3.Python解释器 4.安装Python 5.第一个Python程序 Hello World 6.P ...
- Python之路3【第一篇】Python基础
本节内容 Python简介 Python安装 第一个Python程序 编程语言的分类 Python简介 1.Python的由来 python的创始人为吉多·范罗苏姆(Guido van Rossum) ...
- 第一篇:python基础
python基础 python基础 本节内容 python起源 python的发展史 为什么选择python3 第一个python程序 变量定义 表达式和运算符 用户输入 流程控制 判断 流程控制 ...
- Day1 - Python基础1 介绍、基本语法、流程控制
Python之路,Day1 - Python基础1 本节内容 Python介绍 发展史 Python 2 or 3? 安装 Hello World程序 变量 用户输入 模块初识 .pyc是个什么鬼 ...
- Day1 Python基础学习
一.编程语言分类 1.简介 机器语言:站在计算机的角度,说计算机能听懂的语言,那就是直接用二进制编程,直接操作硬件 汇编语言:站在计算机的角度,简写的英文标识符取代二进制去编写程序,本质仍然是直接操作 ...
- python基础day1
一.python介绍 1.1简介 Python (英国发音:/ˈpaɪθən/ 美国发音:/ˈpaɪθɑːn/), 是一种面向对象的解释型计算机程序设计语言,由荷兰人Guido van Rossum ...
- python基础1-转自金角大王
Python之路,Day1 - Python基础1---转自金角大王 本节内容 Python介绍 发展史 Python 2 or 3? 安装 Hello World程序 变量 用户输入 模块初识 ...
随机推荐
- Springboot+dubbo+zookeeper整合
本想自己搭建一个Spring+dubbo+zookeeper整合好的框架,想寻找个最佳实现但是遇到各种各样的问题,只好自己看看dubbo starter的源码 整理如下: 通过打上断点来看配置的对不对 ...
- MVC Ajax.BeginForm重复提交解决方法
mvc使用MVC Ajax.BeginForm提交的时候有重复提交结果的时候检查相关js文件引用情况, 其中mvc4注意 1 2 3 4 @Scripts.Render("~/bundles ...
- 上传文件表单file,限制上传文件类型的方法--参数accept
我们使用<input type="file" />来上传文件,但是当你只想要上传某种格式的文件,比如说(jpg)文件时.可以通过accept来限制. <form& ...
- Linux下汇编语言学习笔记27 ---
这是17年暑假学习Linux汇编语言的笔记记录,参考书目为清华大学出版社 Jeff Duntemann著 梁晓辉译<汇编语言基于Linux环境>的书,喜欢看原版书的同学可以看<Ass ...
- The Java library for converting Wikipedia wikitext notation to HTML
https://code.google.com/p/gwtwiki/ The Java Wikipedia API (Bliki engine) is a parser library for con ...
- SOJ 2800_三角形
真的是O不是0[看了discuss才发现.....一个大写的蠢 [题意]多个黑白三角形组成的倒三角,求白三角形组成的最大倒三角的面积 [分析]由于问的是倒三角个数,所以只需看与行数奇偶性相同的白色倒三 ...
- 上下文( Contexts )
在 Indy9 的服务器中,链接特定(connection specific)的数据被作为线程类的一部分被存储. 实现这个要不然通过使用 thread.data 属性要不然通过继承对应的 thread ...
- 咏南 DELPHI DATASNAP LINUX中间件
咏南 DATASNAP LINUX中间件 咏南 DATASNAP LINUX中间件,一套源码,同时支持WINDOWS和LINUX操作系统. 基于DELPHI 10.2 TOKYO开发 使用FIRE ...
- 条款十五: 让operator=返回*this的引用
c++程序员经常犯的一个错误是让operator=返回void,这好象没什么不合理的,但它妨碍了连续(链式)赋值操作,所以不要这样做. 一般情况下几乎总要遵循operator=输入和返回的都是类对象的 ...
- Smart Home DIY 计划
工作了这么长时间了,感觉自己眼下的工作内容非常不利于技术水平的提升,对此状况,我心里深感不踏实.因此,我决定利用下班时间.边学习边做,做一套真正可用的智能家居系统,首先部署到自己居住的房间. 对此智能 ...