如何用Python强大的matplotlib库绘图

matplotlib库支持超过100种数据可视化的显示效果,其功能十分强大。具体可访问下述网址:

我们一般通过pyplot简单调用使用,引用方法很简单:

一、先看一个简单的例子:

               如何用Python强大的matplotlib库作图?   

   

 
 
 
 
plt.plot 直接加一个列表,则列表值为y轴,x轴自动设置为列表对应元素的索引值(当为两个列表时,前一个列表为横坐标);
plt.ylabel可设置坐标轴名称;
plt.axis为设置横纵坐标范围;
plt.savefig为保存图片到当前目录下,这里的dpi指图的质量,即每英寸像素点的数量为600,默认为png格式;plt.show为显示该图形。
 
二、绘图区域分割实现多图显示:
plt.subplot(nrows, ncols, plot_number) 用来划分绘图区域并选定某一特定区域,其中nrows和ncols分别为分割区域的行数和列数,plot_number为当前绘图区域(注:该值是按一行一行方式的数来的)。如此便实现了多图显示。
  如果绘制图形区域不是规则的划分,需要用到辅助subplot设计的函数subplot2grid() 。其基本理念为:设定网络,选中网络,确定选中行列区域数量,编号从0开始。
plt.subplot2grid(GridSpec, CurSpec, colspan=1, rowspan=1)
其中第一个参数表示区域划分,第二个参数为选定位置,第三第四个参数分别值列和行的延伸。见下例
如何用Python强大的matplotlib库作图?     如何用Python强大的matplotlib库作图?
 
 
三、plot函数常用功能:
  plt.plot(x, y, format_string, **kwargs) 其中x为x轴数据,为列表或numpy数组;y为y轴数据;format_string为控制曲线格式的字符串,可选;**kwargs表示可以多组放置前三个参数,绘制在一张图中(例如绘制多条曲线,注:此时x不可省略)。
  format_string 由颜色字符、风格字符和标记字符组成。
(1)常用颜色字符有:(也可用color='green'设定)
'b' 蓝色    'm'洋红色    'g'绿色    'y'黄色    'r'红色    'k'黑色    'w'白色    '#0080000'RGB某颜色    '0.8'灰度值字符串
(2)常用风格字符有:(也可用linestyle='dashed'设定)
'-'实线    '--'破折线    '-.'点划线    ':'虚线   
(3)常用的标记字符有:(也可用marker='o'设定)
'.'点    ','像素(极小点)    'o'实心圈    'v'倒三角    '^'上三角    '>'右三角    '<'左三角    '1'下花三角
'2'上花三角    '3'左花三角    '4'右花三角    's'实心方形    'p'实心五角    '*'星形    'h'竖六边形   
'H'横六边形    '+'十字    'x'x标记    'D'菱形    'd'瘦菱形    '|'垂直线
  如何用Python强大的matplotlib库作图?     如何用Python强大的matplotlib库作图?
用法如上例所示。
 
 
四、pyplot的中文显示:
  一般中文是不能够显示在pyplot中的,如果要在图中添加中文可以选择用rcParams将字体进行修改。
如何用Python强大的matplotlib库作图?
rcParams的属性(会改变图中所有的字体):
'font.family'用于显示字体名称
'font.style'字体风格,正常'normal'或斜体'italic'
'font.size'字体大小,整数字号
  另一种方法更加实用简单,增加一个fontproperties属性,由于这种方法可局部修改字体,因此更推荐使用此方法。
  除了plt.xlabel() , plt.ylabel()还有如下几种文本显示函数
plt.title() 对图形整体增加文本标签; plt.text() 在任意位置增加文本;plt.annotate() 在图形中增加带箭头注释
  为了更好理解本节内容,具体见下例:
如何用Python强大的matplotlib库作图?
如何用Python强大的matplotlib库作图?
熟悉LaTeX编写的人不难发现,'$'符号括起来的部分是LaTeX的语法格式,可输入很多常用的数学符号。
plt.text() 前两个参数表示的是输入文本的起始位置,第三个参数为输入内容,最后为格式;
plt.annotate() 第一个参数为输入内容,第二个参数为箭头指向位置,第三个参数为文本位置,最后为一个字典格式的箭头格式调整参数。
 

五、常用基础图表函数:
plt.plot()绘制坐标图; plt.boxplot()箱形图; plt.bar()条形图; plt.barh()横向条形图; plt.polar()极坐标图; 
plt.pie()饼图; plt.psd()功率谱密度图; plt.specgram()谱图; plt.cohere() X-Y的相关性函数图;
plt.scatter()散点图; plt.step()步阶图; plt.hist()直方图; plt.contour()等值图; plt.vlines()垂直图; 
plt.stem()柴火图; plt.plot_date()数据日期; 
下面介绍几种常用的图标绘制方法:
(1)饼图
如何用Python强大的matplotlib库作图?    如何用Python强大的matplotlib库作图?
其中sizes约定各块尺寸,explode指定突出比例,labels给出各块标签,autopct表示显示百分数的方式,shadow指阴影效果,startangle指其实角度。
(2)直方图
如何用Python强大的matplotlib库作图?     如何用Python强大的matplotlib库作图?
其中最关键的为前两个参数,第一个是统计数据a;第二个参数bin,指的是直立直方的个数(即在最小值和最大值之间平均划分为bin份,统计每一份的个数并绘图);normed为1表示出现概率(归一化了),为0表示出现次数;
(3)散点图
如何用Python强大的matplotlib库作图?     如何用Python强大的matplotlib库作图?
上述应用的时面向对象的绘图方式,这种方式可以实现更加定制化的绘图,但也更加复杂。

 
六、三维图的绘制:
(1)绘制三维坐标点和线
如何用Python强大的matplotlib库作图?
如何用Python强大的matplotlib库作图?
(2)绘制平面和曲面
如何用Python强大的matplotlib库作图?
如何用Python强大的matplotlib库作图?
 

猜你喜欢

转载自www.cnblogs.com/pursing-Li/p/10040487.html