Python-----Matplotlib坐標軸(axis)


一、坐標軸名字更換

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 = '--')
plt.xlim((-3,5))
plt.ylim((-3,10))
plt.xlabel('x')
plt.ylabel('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 = '--')
plt.xlim((-3,5))
plt.ylim((-3,5))
plt.xlabel('x')
plt.ylabel('y')
new_ticks1 = np.linspace(-3,5,5)   #修改坐標軸上的小標 print(new_ticks1)
plt.xticks(new_ticks1)         #xticks為x軸
plt.yticks([-2,0,2,5],[r'$one\ shu$',r'$\alpha$',r'$three$',r'four'])   #將y軸上的小標改成文字,其中,空格需要增加\,即'\ ',$可將格式更改成數字模式
#如果需要輸入數學形式的α,則需要用\轉換,即,\alpha
plt.show()

如下:x和y軸下標修改成-3-5,並且平分成5個

 

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.xlim((-3,5))
plt.ylim((-3,5))
plt.xlabel('x')
plt.ylabel('y')
new_ticks1 = np.linspace(-3,5,5)
print(new_ticks1)
plt.xticks(new_ticks1)
plt.yticks([-2,0,2,5],[r'$one\ shu$',r'$\alpha$',r'$three$',r'four'])

l1, = plt.plot(x,y2,label='up') #label線的名字
l2, = plt.plot(x,y1,color='red',linewidth=1.0,linestyle = '--',label='down')
plt.legend(handles=[l1,l2,],labels=['a1','a2'],loc='best')
#handles,labels,為線取名用,l1,l2必須逗號結尾 #loc=location best:自動定位一個較空的位置;或center(right,left) right(left)
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 = '--')
plt.xlim((-3,5))
plt.ylim((-3,5))
plt.xlabel('x')
plt.ylabel('y')
new_ticks1 = np.linspace(-3,5,5)
print(new_ticks1)
plt.xticks(new_ticks1)
plt.yticks([-2,0,2,5],[r'$one\ shu$',r'$\alpha$',r'$three$',r'four'])
ax = plt.gca()    #axc = 'get current axis' 獲取現在的軸
ax.spines['top'].set_color('none')
ax.spines['right'].set_color('none')
ax.xaxis.set_ticks_position('bottom')   #用bottom代替x軸
ax.yaxis.set_ticks_position('left')     #用left代替y軸
ax.spines['left'].set_position(('data',0))
ax.spines['bottom'].set_position(('data',0))#axes 百分比
plt.show()

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM