复习matplotlib课程代码时,到了坐标轴设置这部分的时候,重新梳理了一下坐标轴位置摆放的操作
一:直接完成十字交叉
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(-3, 3, 50)
y1 = x ** 2
y2 = 2 * x + 1
plt.figure(num='914')
plt.plot(x, y1)
plt.plot(x, y2)
# 抓取所有轴,隐藏不需要的
axis = plt.gca()
axis.spines['right'].set_color('none')
axis.spines['top'].set_color('none')
#直接把指定的“脊梁”摆成十字交叉状
axis.spines['left'].set_position(('data', 0))
axis.spines['bottom'].set_position(('data', 0))
plt.show()
显示效果如下:
二:先规定XY轴,再摆十字交叉坐标系
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(-3, 3, 50)
y1 = x ** 2
y2 = 2 * x + 1
plt.figure(num='914')
plt.plot(x, y1)
plt.plot(x, y2)
# 隐藏不需要的边,先抓取
axis = plt.gca()
axis.spines['right'].set_color('none')
axis.spines['top'].set_color('none')
# 先定x,y轴
axis.xaxis.set_ticks_position('bottom')
axis.yaxis.set_ticks_position('left')
# 把想要的轴边摆成十字交叉型
axis.spines['left'].set_position(('data', 0))
axis.spines['bottom'].set_position(('data', 0))
plt.show()
显示效果如下:
和前一幅图是一摸一样的,也就是说,在构建十字交叉型坐标系的时候,是否先规定x,y轴对结果没有影响。