python 可視化
阿新 • • 發佈:2018-09-08
.py Y軸 坐標 tom 邊緣 ylabel 不用 plt 字體
基本畫圖操作:
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(-3,3,50)
y1 = 2*x+1
y2 = x**2#x的平方
plt.figure()
plt.plot(x,y1) #畫線
plt.scatter(x,y2) #畫點
plt.figure(num=333,figsize=(8,5))#圖333
plt.plot(x,y2)
plt.show()
設置圖例:
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(-3,3,50)
y1 = 2*x+1
y2 = x**2#x的平方
plt.figure()
plt.xlim((-1,2))
plt.ylim((-2,3))
plt.xlabel(‘I am x‘)
plt.ylabel(‘I am y‘)
new_ticks = np.linspace(-1,2,5)#5為5個單位
print(new_ticks)
plt.xticks(new_ticks)
#用r(正則表達)和$框起來可以轉換為計算機可以讀的字體
#\加空格轉義為空格,\加alpha能夠輸出 真正的alpha
plt.yticks([-2,-1.8,-1,1.22,3,],
[r ‘$really\ bad$‘,r‘$bad\ \alpha$‘,‘normal‘,‘good‘,‘really good‘])
l1,=plt.plot(x,y2,label=‘up‘)#畫線
l2,=plt.plot(x,y1,color=‘red‘,linewidth=1.0,linestyle=‘--‘,label=‘dowm‘)#‘--’為虛線
#loc可以為upper right等等
#要傳到handles要加,用了labels後就不用l1,l2本身的label
plt.legend(handles=[l1,l2,],labels=[‘aaa‘,‘bbb‘],loc=‘best‘)
plt.show()
設置坐標軸位置:
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(-3,3,50)
y1 = 2*x+1
y2 = x**2#x的平方
plt.figure()
plt.plot(x,y2)
plt.plot(x,y1,color=‘red‘,linewidth=1.0,linestyle=‘--‘)
plt.xlim((-1,2))
plt.ylim((-2,3))
plt.xlabel(‘I am x‘)
plt.ylabel(‘I am y‘)
new_ticks = np.linspace(-1,2,5)#5為5個單位
print(new_ticks)
plt.xticks(new_ticks)
#用r(正則表達)和$框起來可以轉換為計算機可以讀的字體
#\加空格轉義為空格,\加alpha能夠輸出 真正的alpha
plt.yticks([-2,-1.8,-1,1.22,3,],
[r‘$really\ bad$‘,r‘$bad\ \alpha$‘,‘normal‘,‘good‘,‘really good‘])
ax = plt.gca()#ax為上圖
ax.spines[‘right‘].set_color(‘none‘)#刪除右邊緣黑框
ax.spines[‘top‘].set_color(‘none‘)#刪除上邊緣黑框
ax.xaxis.set_ticks_position(‘bottom‘)#令x軸為底邊緣
ax.yaxis.set_ticks_position(‘left‘)#令y軸為左邊緣
ax.spines[‘bottom‘].set_position((‘data‘,-1))#將底邊緣放到 y軸數據-1的位置
ax.spines[‘left‘].set_position((‘data‘,0))#將左邊緣放到 y軸數據-1的位置
plt.show()
python 可視化