matplotlib绘图基础

本文介绍了如何使用Python的Matplotlib库进行基本的二维图形绘制,包括设置坐标轴标签、图例、标题等,并展示了如何绘制正弦曲线和余弦曲线。此外还提供了多轴图的绘制方法。

一个简单的例子

# -*- coding:cp936 -*-

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()                  #显示图像

运行以上程序,得如下图所示的曲线:

Demo

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

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

for idx, color in enumerate("rgbyck"):
    plt.subplot(320+idx+1, axisbg=color)
plt.show() 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值