当前位置:首页 >> 脚本专栏

python matplotlib坐标轴设置的方法

在使用matplotlib模块时画坐标图时,往往需要对坐标轴设置很多参数,这些参数包括横纵坐标轴范围、坐标轴刻度大小、坐标轴名称等

在matplotlib中包含了很多函数,用来对这些参数进行设置。

我们可以对坐标轴进行设置,设置坐标轴的范围,设置坐标轴上的文字描述等。

基本用法

例如:

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
# 生成x轴上的数据:从-3到3,总共有50个点
x = np.linspace(-1, 1, 50)
# 定义一个线性方程
y1 = 2 * x + 1
# 定义一个二次方程
y2 = x ** 2
# 设置x轴的取值范围为:-1到2
plt.xlim(-1, 2)
# 设置y轴的取值范围为:-1到3
plt.ylim(-1, 3)
# 设置x轴的文本,用于描述x轴代表的是什么
plt.xlabel("I am x")
# 设置y轴的文本,用于描述y轴代表的是什么
plt.ylabel("I am y")
plt.plot(x, y2)
# 绘制红色的线宽为1虚线的线条
plt.plot(x, y1, color='red', linewidth=1.0, linestyle='--')
# 显示图表
plt.show()

输出图为:

python matplotlib坐标轴设置的方法 

修改坐标轴的刻度

想要修改x轴的刻度,从-1到2,总共5点:

new_ticks = np.linspace(-1, 2, 5)
plt.xticks(new_ticks)

只要把上述代码放在画图之前,最后画出来的图为:

python matplotlib坐标轴设置的方法

这样x轴上的刻度就被修改成了从-1到2共5个点。

把刻度用文字来表示

# 设置y刻度:用文字来显示刻度
plt.yticks([-2, -1.8, -1, 1.22, 3],
  ['really bad', 'bad', 'normal', 'good', 'really good'])

上面代码的意思就是把y刻度中的数值和文字进行了映射:

-2 => 'really bad'

-1.8 => 'bad'

-1 => 'normal'

1.22 => 'good'

3 => 'really good'

显示图为:

python matplotlib坐标轴设置的方法 

修改坐标轴刻度字体

为了能够使刻度上的字体显示得好看些,可以使用:

plt.yticks([-2, -1.8, -1, 1.22, 3],
  [r'$really\ bad$', r'$bad\alpha$', 'normal', r'$good$', 'really good'])

上面用正则文本方式来显示字体,同时还用\alpha来转义显示数学中的alpha字母,图像显示如下:

python matplotlib坐标轴设置的方法

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。