python matplotlib绘图大全(散点图、柱状图、饼图、极坐标图、热量图、三维图以及热图)
//2019.7.14晚
matplotlib七种常见图像输出编程大全
七种图形汇总输出如下:

import numpy as np #导入数据结构nmupy模块
import matplotlib.pyplot as plt #导入matplotlib图像输出模块
plt.rcParams["font.sans-serif"]=["SimHei"] #输出图像的标题可以为中文正常输出
plt.rcParams["axes.unicode_minus"]=False #可以正常输出图线里的负号
(必会用到的导入模块)
#1-1散点图输出
fig=plt.figure()
fig.add_subplot(3,3,1)
n=128
X=np.random.normal(0,1,n) #随机数X的生成(生成正态分布,平均数为0,方差为1,个数为128)
Y=np.random.normal(0,1,n) #随机数Y的生成(生成正态分布,平均数为0,方差为1,个数为128)
T=np.arctan2(Y,X)
#plt.axes([0.025,0.025,0.95,0.95]) #指定显示范围
plt.scatter(X,Y,s=75,c=T,alpha=.5) #画散点图的函数scatter(其中XY表示数值的大小,s表示散点的尺寸大小,c表示颜色,alpha表示透明度)
plt.xlim(-1.5,1.5),plt.xticks([]) #x和y坐标轴的范围
plt.ylim(-1.5,1.5),plt.yticks([]) #x和y坐标轴的范围
plt.axis() #显示所有图像范围
plt.title("scatter")
plt.xlabel("x")
plt.ylabel("y")

#1-2bar 柱状图
fig.add_subplot(3,3,2)
n=10
X=np.arange(n) #定义从0-9的数列
Y1=(1-X/float(n))*np.random.uniform(0.5,1.0,n) #定义变量X的计算方式
Y2=(1-X/float(n))*np.random.uniform(0.5,1.0,n) #定义变量Y的计算方式
plt.bar(X,Y1,facecolor="#9999ff",edgecolor="white") #编辑输出柱状图的格式(其中facecolor表示输出柱状图的颜色,edgecolor表示边框的颜色)
plt.bar(X,-Y2,facecolor="#ff9999",edgecolor="white") #编辑输出柱状图的格式
for x,y in zip(X,Y1): #编辑输出柱状图的位置格式(其中0.4表示每个柱状图之间的距离,'%.2f'% y表示输出小数点的位数,ha表示数值标注横向对齐,va表示柱状图纵向对齐位置)
plt.text(x,y+0.05,'%.2f'% y,ha='center',va="bottom")
for x, y in zip(X,Y2):
plt.text(x,-y-0.05,'%.2f'% y,ha='center',va="top")

#Pie1-3(饼图)
fig.add_subplot(3,3,3)
n=20
z=np.ones(n)
z[-1]=2
plt.pie(z,explode=z*.05,colors=["%f"%(i/float(n)) for i in range(n)],labels=["%.2f"%(i/float(n)) for i in range(n)])
#其中z为原来输入的数组,explode表示整个扇形距离圆心的距离大小(如果不写默认为0),colors表示颜色变化,labels表示各个扇形的数值大小(其中2表示小数位数大小
plt.gca().set_aspect("equal") #圆形
plt.xticks([])
plt.yticks([])
plt.show()

#polar1-4(极坐标图)
fig.add_subplot(3,3,4,polar=True) #需要使得polar模块为真True
n=20
theta=np.arange(0.0,2*np.pi,2*np.pi/n) #定义角度
radii=10*np.random.rand(n) #定义半径
plt.plot(theta,radii) #输出折线图
#plt.polar(theta,radii)两种方式都可以 #输出极坐标图

#1-5 heatmap
from matplotlib import cm #输出颜色设置模块
fig.add_subplot(335)
data=np.random.rand(3,3)
cmap=cm.Blues #选择颜色系为蓝色体系
map=plt.imshow(data,interpolation="nearest",cmap=cmap,aspect="auto",vmin=0,vmax=1) #设置图像输出时的格式

#1-6 3D
from mpl_toolkits.mplot3d import Axes3D #导入3D模块
fig.add_subplot(336,projection="3d")
x=np.random.randint(1,10,10)
y=np.random.randint(1,10,10)
z=x*2+2*y #函数关系式
plt.plot(x,y,z,"r") #输出3D图像

#1-7 hotmap热流图
fig.add_subplot(313)
def f(x,y):
return (1-x/2+x**5+y**3)*np.exp(-x**2-y**2)
n=256
x=np.linspace(-3,3,n)
y=np.linspace(-3,3,n)
X,Y=np.meshgrid(x,y) #将xy转换为矩阵
#将向量x和y定义的区域转换成矩阵X和Y,其中矩阵X的行向量是向量x的简单复制,而矩阵Y的列向量是向量y的简单复制#假设x是长度为m的向量,y是长度为n的向量,则最终生成的矩阵X和Y的维度都是 nm (注意不是mn)
plt.contourf(X,Y,f(X,Y),8,cmap=plt.cm.hot) #输出热流图
plt.show()

python matplotlib绘图大全(散点图、柱状图、饼图、极坐标图、热量图、三维图以及热图)的更多相关文章
- Python Matplotlib绘图基础
Matplotlib绘图基础 1.Figure和Subplot import numpy as np import matplotlib.pyplot as plt #创建一个Figure fig = ...
- python matplotlib 绘图基础
在利用Python做数据分析时,探索数据以及结果展现上图表的应用是不可或缺的. 在Python中通常情况下都是用matplotlib模块进行图表制作. 先理下,matplotlib的结构原理: mat ...
- 【划重点】Python matplotlib绘图建立画布和坐标系
一.建立画布 import matplotlib.pyplot as plt import numpy as np x=np.arange(8) y=np.arange(8) print(x,y) # ...
- python matplotlib 绘图
饼图 import matplotlib.pyplot as plt # The slices will be ordered and plotted counter-clockwise. label ...
- Python matplotlib绘图学习笔记
测试环境: Jupyter QtConsole 4.2.1Python 3.6.1 1. 基本画线: 以下得出红蓝绿三色的点 import numpy as npimport matplotlib. ...
- Python matplotlib绘图设置图例
一.语法简介 plt.legend(loc=2,edgecolor='red',facecolor='green',shadow='True',fontsize=10) #edgecolor 图例边框 ...
- 【划重点】Python matplotlib绘图设置坐标轴的刻度
一.语法简介 plt.xticks(ticks,labels,rotation=30,fontsize=10,color='red',fontweight='bold',backgroundcolor ...
- 吴裕雄 python matplotlib 绘图示例
import matplotlib.pyplot as plt plt.scatter([1,2,3,4],[2,3,2,5])plt.title('My first plot')plt.show() ...
- python matplotlib绘图
import numpy as np import matplotlib.pyplot as plt from scipy.constants.constants import alpha from ...
随机推荐
- Selenium+webdriver自动化登陆QQ邮箱并发送邮件
1.关于selenium Selenium的主要功能包括:(1)测试与浏览器的兼容性:测试应用程序能否兼容工作在不同浏览器和操作系统之上.(2)测试系统功能:录制用例自动生成测试脚本,用于回归功能测 ...
- Python学习第十八课——继承,接口继承等
1.继承:字面意思 # 继承 : 字面意思 class father: pass class grandfather: pass class children(father): # 单继承 pass ...
- Spring_MVC 21问
1.什么是Spring MVC ?简单介绍下你对springMVC的理解? Spring MVC是一个基于Java的实现了MVC设计模式的请求驱动类型的轻量级Web框架,通过把Model,View,C ...
- 2 (mysql实战) 日志系统
前面我们系统了解了一个查询语句的执行流程,并介绍了执行过程中涉及的处理模块.相信你还记得,一条查询语句的执行过程一般是经过连接器.分析器.优化器.执行器等功能模块,最后到达存储引擎. 那么,一条更新语 ...
- sqlalchemy 连接mysql8.0报 RuntimeError: cryptograpy si requeired for sha256_password 错误
cryptography is required for sha256_password or caching_sha2_password 需要cryptography模块的支持才能连接需要sha25 ...
- 笔记||Python3进阶之调用外部程序
像wget可以下载文件 ffmpeg可以切割.合并.转换.录制视频 free命令可以查看linux内存使用信息 python提供了库来调用外部程序.命令?> 最常见的两种方法: ①o ...
- linux查漏补缺-Linux文件目录结构一览表
FHS 标准 FHS(Filesystem Hierarchy Standard),文件系统层次化标准,该标准规定了 Linux 系统中所有一级目录以及部分二级目录(/usr 和 /var)的用途. ...
- 【剑指Offer面试编程题】题目1389:变态跳台阶--九度OJ
题目描述: 一只青蛙一次可以跳上1级台阶,也可以跳上2级--它也可以跳上n级.求该青蛙跳上一个n级的台阶总共有多少种跳法. 输入: 输入可能包含多个测试样例,对于每个测试案例, 输入包括一个整数n(1 ...
- 每日算法 - day 15
每日算法 those times when you get up early and you work hard; those times when you stay up late and you ...
- tf-idf、朴素贝叶斯的短文本分类简述
朴素贝叶斯分类器(Naïve Bayes classifier)是一种相当简单常见但是又相当有效的分类算法,在监督学习领域有着很重要的应用.朴素贝叶斯是建立在“全概率公式”的基础下的,由已知的尽可能多 ...