Matplotlib文档链接:https://matplotlib.org/api/pyplot_summary.html
实例参考:https://www.data-blogger.com/2017/11/15/python-matplotlib-pyplot-a-perfect-combination/
对于Python来说,Matplotlib是最著名的绘图库,它主要用于二维绘图,当然它也可以进行简单的三维绘图(基于spyder)。
一: 各参数详解:
功能 | 描述 |
---|---|
acorr |
绘制x的自相关。 |
angle_spectrum |
绘制角度谱图。 |
annotate |
用文本文本注释点xy。 |
arrow |
向轴添加箭头。 |
autoscale |
将轴视图自动缩放到数据(切换)。 |
axes |
将轴添加到当前图形并使其成为当前轴。 |
axhline |
在轴上添加水平线。 |
axhspan |
在轴上添加水平跨度(矩形)。 |
axis |
获取或设置某些轴属性的便捷方法。 |
axvline |
在轴上添加垂直线。 |
axvspan |
在轴上添加垂直跨度(矩形)。 |
bar |
制作条形图。 |
barbs |
绘制倒钩的二维场。 |
barh |
制作水平条形图。 |
box |
在当前轴上打开或关闭轴框。 |
boxplot |
制作一个盒子和胡须图。 |
broken_barh |
绘制一个水平的矩形序列。 |
cla |
清除当前轴。 |
clabel |
标记等高线图。 |
clf |
清除当前数字。 |
clim |
设置当前图像的颜色限制。 |
close |
关闭一个数字窗口。 |
cohere |
绘制x和y之间的一致性。 |
colorbar |
将颜色条添加到绘图中。 |
contour |
绘制轮廓。 |
contourf |
绘制轮廓。 |
csd |
绘制交叉谱密度。 |
delaxes |
从图中移除Axes 斧头(默认为当前轴)。 |
draw |
重绘当前数字。 |
errorbar |
将y与x绘制为带有附加错误栏的行和/或标记。 |
eventplot |
在给定位置绘制相同的平行线。 |
figimage |
将未重采样的图像添加到图中。 |
figlegend |
在图上放置一个图例。 |
fignum_exists |
返回是否存在具有给定id的数字。 |
figtext |
添加文字到图。 |
figure |
创建一个新的数字。 |
fill |
绘制填充多边形。 |
fill_between |
在两条水平曲线之间填充区域。 |
fill_betweenx |
在两条垂直曲线之间填充区域。 |
findobj |
查找艺术家对象。 |
gca |
获取与Axes 给定关键字args匹配的当前数字的当前实例,或创建一个实例。 |
gcf |
获取当前数字。 |
gci |
获得当前可着色的艺术家。 |
get_figlabels |
返回现有图形标签的列表。 |
get_fignums |
返回现有图号的列表。 |
grid |
配置网格线。 |
hexbin |
制作六边形分箱图。 |
hist |
绘制直方图。 |
hist2d |
制作2D直方图。 |
hlines |
在每个y处绘制从xmin到xmax的水平线。 |
imread |
将文件中的图像读入数组。 |
imsave |
将数组保存为图像文件。 |
imshow |
显示图像,即 |
install_repl_displayhook |
安装一个repl显示挂钩,以便在将控件返回到repl时自动重绘任何过时的图形。 |
ioff |
关闭交互模式。 |
ion |
打开交互模式。 |
isinteractive |
返回交互模式的状态。 |
legend |
在轴上放置图例。 |
locator_params |
主要滴答定位器的控制行为。 |
loglog |
在x轴和y轴上绘制具有对数缩放的绘图。 |
magnitude_spectrum |
绘制幅度谱。 |
margins |
设置或检索自动缩放边距。 |
matshow |
在新的图形窗口中将数组显示为矩阵。 |
minorticks_off |
从轴上移除次要刻度。 |
minorticks_on |
在轴上显示次要刻度。 |
pause |
暂停间隔秒。 |
pcolor |
使用非常规矩形网格创建伪彩色图。 |
pcolormesh |
使用非常规矩形网格创建伪彩色图。 |
phase_spectrum |
绘制相位谱。 |
pie |
绘制饼图。 |
plot |
绘制y与x作为线和/或标记。 |
plot_date |
绘制包含日期的数据。 |
plotfile |
将数据绘制在文件中。 |
polar |
做一个极地情节。 |
psd |
绘制功率谱密度。 |
quiver |
绘制箭头的2D场。 |
quiverkey |
将一个键添加到箭袋图中。 |
rc |
设置当前的rc参数。 |
rc_context |
返回上下文管理器以管理rc设置。 |
rcdefaults |
从Matplotlib的内部默认样式恢复rc参数。 |
rgrids |
获取或设置当前极坐标图上的径向网格线。 |
savefig |
保存当前数字。 |
sca |
将当前Axes实例设置为ax。 |
scatter |
y与x的散点图,具有不同的标记大小和/或颜色。 |
sci |
设置当前图像。 |
semilogx |
在x轴上绘制带对数刻度的绘图。 |
semilogy |
在y轴上绘制具有对数缩放的图。 |
set_cmap |
设置默认色彩映射。 |
setp |
在艺术家对象上设置属性。 |
show |
显示一个数字。 |
specgram |
绘制频谱图。 |
spy |
绘制2D数组的稀疏模式。 |
stackplot |
绘制堆积区域图。 |
stem |
创建一个词干图。 |
step |
制作一个步骤图。 |
streamplot |
绘制矢量流的流线型。 |
subplot |
在当前图中添加子图。 |
subplot2grid |
在常规网格内的特定位置创建轴。 |
subplot_tool |
启动图的子图工具窗口。 |
subplots |
创建一个图形和一组子图。 |
subplots_adjust |
调整子图布局。 |
suptitle |
为图中添加居中标题。 |
switch_backend |
关闭所有打开的数字并设置Matplotlib后端。 |
table |
添加一个表到Axes 。 |
text |
向轴添加文本。 |
thetagrids |
获取或设置当前极坐标图上的θ网格线。 |
tick_params |
更改刻度,刻度标签和网格线的外观。 |
ticklabel_format |
更改ScalarFormatter 线性轴的默认使用。 |
tight_layout |
自动调整子图参数以指定填充。 |
title |
设置轴的标题。 |
tricontour |
在非结构化三角形网格上绘制轮廓。 |
tricontourf |
在非结构化三角形网格上绘制轮廓。 |
tripcolor |
创建非结构化三角形网格的伪彩色图。 |
triplot |
绘制非结构化三角形网格作为线条和/或标记。 |
twinx |
制作并返回共享x轴的第二个轴。 |
twiny |
制作并返回共享y轴的第二个轴。 |
uninstall_repl_displayhook |
卸载matplotlib显示挂钩。 |
violinplot |
制作小提琴情节。 |
vlines |
绘制垂直线。 |
xcorr |
绘制x和y之间的互相关。 |
xkcd |
打开xkcd草图样式绘图模式。 |
xlabel |
设置x轴的标签。 |
xlim |
获取或设置当前轴的x限制。 |
xscale |
设置x轴刻度。 |
xticks |
获取或设置当前刻度线位置和x轴标签。 |
ylabel |
设置y轴的标签。 |
ylim |
获取或设置当前轴的y限制。 |
yscale |
设置y轴刻度。 |
yticks |
获取或设置y轴的当前刻度位置和标签。 |
plot参数
基本折线图不能满足,这时就需plot的参数来进行调整
美化示例:
import matplotlib.pyplot as plt yy=[1,2,3,4,5,4,2,4,6,7]#随便创建了一个数据 xx=[3,5,4,1,2,3,4,5,6,3] zz=[2,3,4,6,4,3,2,4,5,6] plt.plot(yy,color='r',linewidth=5,linestyle=':',label='数据一')#color指定线条颜色,labeL标签内容 plt.plot(xx,color='g',linewidth=2,linestyle='--',label='数据二')#linewidth指定线条粗细 plt.plot(zz,color='b',linewidth=0.5,linestyle='-',label='数据三')#linestyle指定线形为点 plt.legend(loc=2)#标签展示位置,数字代表标签具位置 plt.xlabel('X轴称') plt.ylabel('Y轴的名称') plt.title('2018.7.30折线图示例') plt.ylim(0,10)#Y轴标签范围为0-10
plt常用参数有
官网详细说明点这里
属性 描述 xlabel 设置当前轴的x轴标签:plt.xlabel(‘X标签名’) ylabel 设置当前轴的y轴标签:plt.xlabel(‘y标签名’) title 设置当前轴的标题:plt.title(‘图例标题名’) ylim 获取或设置当前轴的y限制,plt.ylim(0,6)Y轴范围0-6;Xlim同理懒的写了 legend 在轴上放置图例:legend()无参数自动识别,也可用数字指定位置1,2,3,4试着来 show 展示所画图,spyder一般直接运行不需要此步 grid plt.grid()打开或关闭轴网格,网格一样能设置颜色线型 rcParams[‘font.sans-serif’] 图表中文字体:plt.rcParams[‘font.sans-serif’]=[‘SimHei’]微软雅黑;或=[‘Microsoft Yahei’]黑体 rcParams[‘axes.unicode_minus’] 图表轴负数符号显示问题:plt.rcParams[‘axes.unicode_minus’] = False
plt常画图例有:
官网详细说明点这里
属性 描述 plot 绘制y与x作为线和/或标记。 plot_date 绘制包含日期的数据。 acorr 绘制x的自相关。 axhline 在轴上添加一条水平线。 bar 制作条形图。 barh 制作一个水平条形图。 hist 绘制直方图 hist2d 制作2D直方图。 scatter y与x的散点图,具有不同的标记大小和/或颜色。 stackplot 绘制堆积区域图。
plot常用参数有:
官网详细说明点这里
属性 描述 color 字体颜色:color=‘r’;b、g、r、c、m、y、k、w 或者blue、green、red、cyan、magenta、yellow、black、whtite 或十六进制字符串(’#008000’) linewidth 线条粗细:linewidth=1.=5.=0.3 linestyle 线条形状:linestyle=’–’(虚线);linestyle=’:’(点线);linestyle=’-.’(短线加点); label 数据标签内容:label=‘数据一’,数据标签展示位置需另说明plt.legend(loc=1)数字为标签位置
示例:
import pandas as pd #导入pandas库 import pymysql as mysql #导入mysql库 import matplotlib.pyplot as plt #导入数据可视化库 import numpy as np #导入numpy库 plt.rcParams['font.sans-serif'] = ['Microsoft Yahei'] #指定文字字体格式为微软雅黑字段 plt.rcParams['axes.unicode_minus'] = False connection=mysql.connect(host='数据库ip',port='端口',user='用户账号',password='登录密码',db='连接的库名',charset='utf8')#设置连接数据库的参数 select=connection.cursor()#创建游标 select.execute("SELECT * FROM tabel")#写入SQL查询语句 zd=list((pd.DataFrame(list(select.description)))[0])#获取查询结果的列名 sqldata=select.fetchall()#获取查询结果 select.close #关闭查询 connection.close #关闭数据库接接 data1=pd.DataFrame(list(sqldata)) #将数据转化成df类型 data1.columns=zd #将列名重置为查询结果列名 plt.figure(figsize=(10,5)) #设置图表大小,长10,宽5 plt.plot(data1['机器A拟合度'],label='机器A准确率',color='#aa0000',linestyle='-',linewidth=3)#画机器A准确率的线条 plt.plot(data1['人工A拟合度'],label='人工A准确率',color='#aa0000',linestyle=':',linewidth=3)#画人工A准确率的线条 plt.plot(data1['机器B拟合度'],label='机器B准确率',color='#666666',linestyle='-',linewidth=3)#画机器B准确率的线条 plt.plot(data1['人工B拟合度'],label='人工B准确率',color='#666666',linestyle=':',linewidth=3)#画人工B准确率的线条 plt.plot([0,7],[0.9,0.9],color='g',linestyle='-.',linewidth=1)#画一根绿色的辅助线,x轴从0到7,Y轴为0.9 plt.xticks(np.arange(8),('wk23','wk24','wk25','wk26','wk27','wk28','wk29','wk30'))#更改图表X标签为制定内容 plt.legend(loc=4)#将图例说明放在图表的右下角 plt.title('人机绝对准确率6.4-7.29',fontsize=20)#命名图表名称,设置字体大小 plt.xlabel('周',fontsize=20)#设置X轴名称及字体大小 plt.ylabel('准确率%',fontsize=20)#设置Y轴名称及字体大小
三:参数对应:
常用color
color大全见文末(颜色-文字对照图):
w | white |
b | blue |
g | green |
r | red |
c | cyan |
m | magenta |
y | yellow |
k | black |
Marker常见参数
所有marker官网链接。
线的color大全
常用参数介绍:
- lable:设定坐标线的标签, e.g. ax1.plot(x1, y1, label='x的label')
- title:设定标题。e.g. plt.title('title_name')
- y :纵坐标。
- x :默认为[0, 1, ... , N-1],可手动设定。
- data:是:一个自带坐标标签(lable)的数据。如果指定,x坐标y坐标将会显示数据源标签名称;
- color:设定线的颜色;
- marker:设定节点的样式;
- alpha:设定图的透明度,取值范围是[0,1]。
- plt.plot(data) 等价于 plt.plot(data, 'k-') ,等价于 plt.plot(y=data, kind='line', color='k', linestyle='line'),表示k黑色、o圆节点、- 连续连接线(连接2个O形点);
- plt.plot()如果没有连接节点的linestyle参数,结果将为散点图。
**kwargs参数部分
- ls 或者 linestyle:设定折线的格式,[文字表述版为‘ solid’, 'dashed', 'dashdot', 'dotted'],符号表述版[ '-', '--', '-.', ':'];
- lw 或者 linewidth:设定折线的宽度,
- drawstyle:指定画图的格式,比如drawstyle='steps-post',即阶梯图线;
- ms 或者 markersize:设定大小;
- mec 或者 markeredgecolor:设定边框的颜色;
- mew 或者 markeredgewidth:设定边框粗细的值;
- mfc 或者 markerfacecolor:设定填充的颜色;
- ax1.set_xlable:设定ax1(子图)x坐标的名称
- ax1.set_ylable:设定ax1(子图)y坐标的名称