matplotlib 常用基本库

来源:互联网 发布:身份证 代数 差别 知乎 编辑:程序博客网 时间:2024/05/21 15:00

前言:本博文摘抄自中国慕课大学上的课程《Python数据分析与展示》,推荐刚入门的同学去学习,这是非常好的入门视频。

plt.savefig(‘test’, dpi = 600) :将绘制的图画保存成png格式,命名为 test 
plt.ylabel(‘Grade’) : y轴的名称 
plt.axis([-1, 10, 0, 6]) : x轴起始于-1,终止于10 ,y轴起始于0,终止于6 
plt.subplot(3,2,4) : 分成3行2列,共6个绘图区域,在第4个区域绘图。排序为行优先。也可 plt.subplot(324),将逗号省略。

.plot函数

plt.plot(x, y, format_string, **kwargs): x为x轴数据,可为列表或数组;y同理;format_string 为控制曲线的格式字符串, **kwargs 第二组或更多的(x, y, format_string) 
format_string: 由 颜色字符、风格字符和标记字符组成。 
颜色字符:‘b’蓝色 ;‘#008000’RGB某颜色;‘0.8’灰度值字符串 
风格字符:‘-’实线;‘–’破折线; ‘-.’点划线; ‘:’虚线 ; ‘’‘’无线条 
标记字符:‘.’点标记 ‘o’ 实心圈 ‘v’倒三角 ‘^’上三角

eg: plt.plot(a, a*1.5, ‘Go-’, a, a*2, ‘*’) 第二条无曲线,只有点

.plot 显示中文字符

pyplot并不默认支持中文显示,需要rcParams修改字体来实现 
rcParams的属性: 
‘font.family’ 用于显示字体的名字 
‘font.style’ 字体风格,正常’normal’ 或斜体’italic’ 
‘font.size’ 字体大小,整数字号或者’large’ ‘x-small’ 
eg: 
import matplotlib 
matplotlib.rcParams[‘font.family’] = ‘STSong’ 
matplotlib.rcParams[‘font.size’] = 20 
设定绘制区域的全部字体变成 华文仿宋,字体大小为20

中文显示2:只希望在某地方绘制中文字符,不改变别的地方的字体 
在有中文输出的地方,增加一个属性: fontproperties 
eg: 
plt.xlabel(‘横轴:时间’, fontproperties = ‘simHei’, fontsize = 20)

pyplot文本显示函数

plt.xlabel():对x轴增加文本标签
plt.ylabel():同理
plt.title(): 对图形整体增加文本标签
plt.text(): 在任意位置增加文本
plt. annotate(s, xy = arrow_crd, xytext = text_crd, arrowprops = dict)
在图形中增加带箭头的注解。s表示要注解的字符串是什么,xy对应箭头所在的位置,xytext对应文本所在位置,arrowprops定义显示的属性 
eg:
plt.xlabel(‘横轴:时间’, fontproperties = ‘SimHei’, fontsize = 15, color = ‘green’)plt.ylabel(‘纵轴:振幅’, fontproperties = ‘SimHei’, fontsize = 15)plt.title(r’正弦波实例 $y=cons(2\pi x)$’ , fontproperties = ‘SimHei’, fontsize = 25)plt.annotate (r%mu=100$, xy = (2, 1), xytext = (3, 1.5), arrowprops = dict(facecolor = ‘black’, shrink = 0.1, width = 2)) # width表示箭头宽度plt.text (2, 1, r’$\mu=100$, fontsize = 15)plt.grid(True)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

plt. annotate(s, xy = arrow_crd, xytext = text_crd, arrowprops = dict)

plt子绘图区域

plt.subplot2grid(GridSpec, CurSpec, colspan=1, rowspan=1):设定网格,选中网格,确定选中行列区域数量,编号从0开始。 
eg: 
plt.subplot2grid((3, 3), (1, 0), colspan = 2) : (3,3)表示分为3行3列,(1,0)表示选中第1行,第0列的区域进行绘图,colspan=2表示在选中区域的延伸

这里写图片描述

GridSpec类 
这里写图片描述

Plot的图表函数

plt.plot(x,y , fmt) :绘制坐标图 
plt.boxplot(data, notch, position): 绘制箱形图 
plt.bar(left, height, width, bottom) : 绘制条形图 
plt.barh(width, bottom, left, height) : 绘制横向条形图 
plt.polar(theta, r) : 绘制极坐标图 
plt.pie(data, explode) : 绘制饼图 
plt.scatter(x, y) :绘制散点图 
plt.hist(x, bings, normed) : 绘制直方图

绘制饼图

这里写图片描述

explode表示突出,如橘色这一块突出;autopct 表示显示数据的格式; shadow表示二维饼图;startangle表示起始的角度; 
此为椭圆形饼图,要为圆形,可添加: plt.axis(‘equal’)

绘制直方图

bings将直方图的取值范围进行均等划分bings个区间; 
normed =1 表示将出现频次进行了归一化。 normed=0,则为频次; 
alpha表示直方图的透明度[0, 1] ; 
histtype = ‘stepfilled’ 表示去除条柱的黑色边框

面向对象的极坐标图绘制 
这里写图片描述

面向对象散点图绘制

这里写图片描述 
将subplots()变成一个对象,fig和ax表示subplots生成的图表以及相关区域。subplots为空时,默认为subplots(111)

面向对象散点图绘制

这里写图片描述

将subplots()变成一个对象,fig和ax表示subplots生成的图表以及相关区域。subplots为空时,默认为subplots(111)

原创粉丝点击