本文实例讲述了Python使用matplotlib实现基础绘图功能。分享给大家供大家参考,具体如下:
一个简单的例子
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
# -*- coding:utf-8 -*-
#!python3
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace( 0 , 10 , 101 ) #设置起始及终点,以及点的数量
y = np.sin(x) #调用numpy库的sin函数
z = np.cos(x * * 2 )
plt.figure(figsize = ( 8 , 6 )) #设置图像的大小
plt.plot(x,y,label = "$y=sin(x)$" ,color = "red" ,linewidth = 2 ) #设置图像属性,$表示将公式格式化
plt.plot(x,z,label = "$y=cos(x**2)$" )
plt.xlabel( "Times/s" ) #设置图像的横纵坐标的名称及单位
plt.ylabel( "Volt/v" )
plt.title( "Demo" )
plt.ylim( - 1.2 , 1.2 ) #设置y的范围
plt.legend()
plt.show() #显示图像
|
运行以上程序,得如下图所示的曲线:
plot函数的调用方式很灵活,
plt.plot(x,y,label="$y=sin(x)$",color = "red",linewidth=2)
将x,y数组传递给plot之后,用关键字参数指定各种属性:
- label : 给所绘制的曲线一个名字,此名字在图示(legend)中显示。只要在字符串前后添加”$”符号,matplotlib就会使用其内嵌的latex引擎绘制的数学公式。
- color : 指定曲线的颜色
- linewidth : 指定曲线的宽度
- xlabel: 设置x轴的文字
- ylabel: 设置y轴的文字
- title:设置图表标题
- ylim:设置y轴的范围
- legend:显示图示
- show():显示所有图像
绘制多轴图
可以理解为在一个绘图区域绘制多个子图。调用函数为subplot(numRows, numCols, plotNum)
subplot
将整个绘图区域等分为numRows行 * numCols列个子区域,然后按照从左到右,从上到下的顺序对每个子区域进行编号,左上的子区域的编号为1。如果numRows,numCols和plotNum这三个数都小于10的话,可以把它们缩写为一个整数,例如subplot(323)和subplot(3,2,3)是相同的。subplot在plotNum指定的区域中创建一个轴对象。如果新创建的轴和之前创建的轴重叠的话,之前的轴将被删除。
例如以下程序可以将绘图空间分成颜色不同的六份:
1
2
3
4
5
6
|
# -*- coding:utf-8 -*-
#!python3
import matplotlib.pyplot as plt
for idx, color in enumerate ( "rgbyck" ):
plt.subplot( 320 + idx + 1 , axisbg = color)
plt.show()
|
运行效果:
希望本文所述对大家Python程序设计有所帮助。
原文链接:https://blog.csdn.net/wyc12306/article/details/53899682