Python使用matplotlib实现基础绘图功能示例

yipeiwu_com7年前Python基础

本文实例讲述了Python使用matplotlib实现基础绘图功能。分享给大家供大家参考,具体如下:

一个简单的例子

# -*- 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指定的区域中创建一个轴对象。如果新创建的轴和之前创建的轴重叠的话,之前的轴将被删除。

例如以下程序可以将绘图空间分成颜色不同的六份:

# -*- 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相关内容感兴趣的读者可查看本站专题:《Python数学运算技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

希望本文所述对大家Python程序设计有所帮助。

相关文章

Python在不同目录下导入模块的实现方法

python在不同层级目录import模块的方法 使用python进行程序编写时,经常会调用不同目录下的模块及函数。本篇博客针对常见的模块调用讲解导入模块的方法。 1. 同级目录下的调用...

python图像处理模块Pillow的学习详解

今天抽空学习了一下之前了解过的pillow库,以前看到的记得这个库可以给图片上加文字加数字,还可以将图片转化成字符画,不过一直没有找时间去学习一下这个模块,由于放假不用训练,所以就瞎搞了...

浅谈利用numpy对矩阵进行归一化处理的方法

本文不讲归一化原理,只介绍实现(事实上看了代码就会懂原理),代码如下: def Normalize(data): m = np.mean(data) mx = max(data)...

OpenCV python sklearn随机超参数搜索的实现

本文介绍了OpenCV python sklearn随机超参数搜索的实现,分享给大家,具体如下: """ 房价预测数据集 使用sklearn执行超参数搜索 """ import ma...

Django model反向关联名称的方法

如果你在 ForeignKey或 ManyToManyField字段上使用 related_name属性,你必须总是为该字段指定一个唯一的反向名称。但在抽象基类上这样做就会引发一个很严重...