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程序 变量 用户输入 模块初识 ...
随机推荐
- echarts的简单应用之(一)柱形图
前段时间做项目需要绘制一些图表来展示信息,从网上资料来看用的比较多的是百度开源的echarts.echarts的官网上有API以及demo.上面的图形都是非常炫的,不过都是静态 数据,我们做项目时不可 ...
- 32道常见的Java基础面试题
1. 什么是 Java 虚拟机(JVM)?为什么 Java 被称作是“平台无关的编程语言”? Java 虚拟机是一个可以执行 Java 字节码的虚拟机进程.Java 源文件被编译成能被 Java 虚拟 ...
- 全文搜索(A-5)-推荐算法
基于内容的推荐算法: 协同过滤推荐算法: 混合推荐算法: 基于内容的推荐算法做了如下假设:用户会喜欢和原来喜欢的物品相类似的项目.
- 学习使用windows下类似iptables的防火墙软件
项目地址:http://wipfw.sourceforge.net一.下载地址:http://sourceforge.net/projects/wipfw/files/安装:解压软件包后执行insta ...
- vue2.0一个书城实例
gitHub克隆地址 git clone https://github.com/Webxiaoyaun/vue-book.git 点击去Github下载 ## 一个书城 ## 有增加,修改,缓存,懒加 ...
- AtCoder Grand Contest 020 D - Min Max Repetition
q<=1000个询问,每次问a,b,c,d:f(a,b)表示含a个A,b个B的字符串中,连续A或连续B最小的串中,字典序最小的一个串,输出这个串的c到d位.a,b<=5e8,d-c+1&l ...
- Thinkphp5.0 控制器向视图view赋值
Thinkphp5.0 控制器向视图view的赋值 方式一(使用fetch()方法的第二个参数赋值): <?php namespace app\index\controller; use thi ...
- request详究
本文主要是对在学习过程中遇到的request用法进行归纳总结,彻底的搞明白request在jsp中的作用. 百度百科的介绍如下: Request对象的作用是与客户端交互,收集客户端的Form.Cook ...
- 洛谷 P4379 [USACO18OPEN]Lemonade Line
P4379 [USACO18OPEN]Lemonade Line 题目描述 这是农场上一个炎热的夏日,Farmer John要给他的 NN 头奶牛发柠檬汽水了!所有的 NN 头奶牛(方便起见,编号为 ...
- symfony 参考
多语言存数据库 http://blog.elendev.com/development/php/symfony/use-a-database-as-translation-provider-in-sy ...