Chapter3 设置坐标轴
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(-3,3,50)
y1 = 2*x+1
y2 = x**2
plt.figure()
plt.plot(x,y2)
plt.plot(x,y1,color='red',linewidth=1.0,linestyle='--')
# 设置x轴的取值范围
plt.xlim((-1,2))
# 设置y轴的取值范围
plt.ylim((-2,3))
# 描述x轴
plt.xlabel('I am x')
# 描述y轴
plt.ylabel('I am y')
plt.show()
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(-3,3,50)
y1 = 2*x+1
y2 = x**2
plt.figure()
plt.plot(x,y2)
plt.plot(x,y1,color='red',linewidth=1.0,linestyle='--')
# 设置x轴的取值范围
plt.xlim((-1,2))
# 设置y轴的取值范围
plt.ylim((-2,3))
# 描述x轴
plt.xlabel('I am x')
# 描述y轴
plt.ylabel('I am y')
# 设置新的角标
new_ticks = np.linspace(-1,2,5)
print(new_ticks) # [-1. -0.25 0.5 1.25 2. ]
plt.xticks(new_ticks) # 把新的角标应用到x轴
plt.show()
可以发现,与上图相比,x的角标发生了变化
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(-3,3,50)
y1 = 2*x+1
y2 = x**2
plt.figure()
plt.plot(x,y2)
plt.plot(x,y1,color='red',linewidth=1.0,linestyle='--')
# 设置x轴的取值范围
plt.xlim((-1,2))
# 设置y轴的取值范围
plt.ylim((-2,3))
# 描述x轴
plt.xlabel('I am x')
# 描述y轴
plt.ylabel('I am y')
# 设置新的角标
new_ticks = np.linspace(-1,2,5)
print(new_ticks)
plt.xticks(new_ticks) # 把新的角标应用到x轴
# 设置y的角标,使得数字与相应注释一一对应
plt.yticks([-2,-1.8,-1,1.22,3],['really bad','bad','normal','good','really good'])
plt.show()
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(-3,3,50)
y1 = 2*x+1
y2 = x**2
plt.figure()
plt.plot(x,y2)
plt.plot(x,y1,color='red',linewidth=1.0,linestyle='--')
# 设置x轴的取值范围
plt.xlim((-1,2))
# 设置y轴的取值范围
plt.ylim((-2,3))
# 描述x轴
plt.xlabel('I am x')
# 描述y轴
plt.ylabel('I am y')
# 设置新的角标
new_ticks = np.linspace(-1,2,5)
print(new_ticks)
plt.xticks(new_ticks) # 把新的角标应用到x轴
# 设置y的角标,使得数字与相应注释一一对应
# 通过给注释首尾添加$符号,使得字体更加好看。当然,空格需要转义才可以显示
plt.yticks([-2,-1.8,-1,1.22,3],['$really\ bad$','$bad$','$normal$','$good$','$really\ good$'])
plt.show()
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(-3,3,50)
y1 = 2*x+1
y2 = x**2
plt.figure()
plt.plot(x,y2)
plt.plot(x,y1,color='red',linewidth=1.0,linestyle='--')
# 设置x轴的取值范围
plt.xlim((-1,2))
# 设置y轴的取值范围
plt.ylim((-2,3))
# 描述x轴
plt.xlabel('I am x')
# 描述y轴
plt.ylabel('I am y')
# 设置新的角标
new_ticks = np.linspace(-1,2,5)
print(new_ticks)
plt.xticks(new_ticks) # 把新的角标应用到x轴
# 设置y的角标,使得数字与相应注释一一对应
# 通过给注释首尾添加$符号,使得字体更加好看。当然,空格需要转义才可以显示
plt.yticks([-2,-1.8,-1,1.22,3],['$really\ bad$','$bad$','$normal$','$good$','$really\ good$'])
# gca = 'get current axis'
ax = plt.gca()
# 获取当前图的四个边框
ax.spines['right'].set_color('none') # 设置右边框,无颜色
ax.spines['top'].set_color('none') # 设置上边框,无颜色
ax.xaxis.set_ticks_position('bottom') # 移动下边框之前,需要先锁定下边框
ax.yaxis.set_ticks_position('left') # 移动左边框之前,需要先锁定左边框
ax.spines['bottom'].set_position(('data',0)) # 通过data的值来选择下边框的位置
# 当data为-1时,代表将下边框移动到y轴的0位置
ax.spines['left'].set_position(('data',0)) # 通过data的值来选择左边框的位置
# 当data为0时,代表将左边框移动到x轴的0位置
plt.show()
标签:plt,ticks,Chapter3,坐标轴,角标,设置,np,new
From: https://www.cnblogs.com/gao79135/p/17313575.html