輸入以下代碼導入我們用到的函數(shù)庫。
創(chuàng)新互聯(lián)建站是一家專注于成都網(wǎng)站設(shè)計、成都網(wǎng)站建設(shè)、外貿(mào)網(wǎng)站建設(shè)與策劃設(shè)計,宕昌網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)建站做網(wǎng)站,專注于網(wǎng)站建設(shè)十載,網(wǎng)設(shè)計領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:宕昌等地區(qū)。宕昌做網(wǎng)站價格咨詢:18980820575
import numpy as np
import matplotlib.pyplot as plt
x=np.arange(0,5,0.1);
y=np.sin(x);
plt.plot(x,y)
采用剛才代碼后有可能無法顯示下圖,然后在輸入以下代碼就可以了:
plt.show()
用python怎樣畫出如題所示的正余弦函數(shù)圖像? 如此編寫代碼,使其中兩個軸、圖例、刻度,大小,LaTex公式等要素與原圖一致,需要用到的代碼如下,沒有縮進:
#-*-codeing:utf-8;-*-
from matplotlib import pyplot as plt
import numpy as np
a=np.linspace(0,360,980)
b=np.sin(a/180*np.pi)
c=np.cos(a/180*np.pi)
fig = plt.figure()
ax = fig.add_subplot(111)
ax.set_xlim([0, 360])
ax.plot(a,b,label=r"$y=\sin(\theta)$")
ax.plot(a,c,label=r"$y=\cos(\theta)$")
ax.grid(True)
ax.set_ylabel(r"$y$")
ax.set_xlabel(r"$\theta$")
plt.xticks(np.arange(0,360+1,45))
plt.title("Sine Cosine Waves")
plt.legend()
plt.savefig("SinCosWaveDegFont.jpg")
plt.show()
代碼運行show的窗口圖
代碼的截圖
代碼輸出的文件的圖
為避免中文顯示出錯,需導入matplotlib.pylab庫
1.2.1 確定數(shù)據(jù)
1.2.2 創(chuàng)建畫布
1.2.3 添加標題
1.2.4 添加x,y軸名稱
1.2.5 添加x,y軸范圍
1.2.6 添加x,y軸刻度
1.2.7 繪制曲線、圖例, 并保存圖片
保存圖片時,dpi為清晰度,數(shù)值越高越清晰。請注意,函數(shù)結(jié)尾處,必須加plt.show(),不然圖像不顯示。
繪制流程與繪制不含子圖的圖像一致,只需注意一點:創(chuàng)建畫布。
合理調(diào)整figsize、dpi,可避免出現(xiàn)第一幅圖橫軸名稱與第二幅圖標題相互遮蓋的現(xiàn)象.
2.2.1 rc參數(shù)類型
2.2.2 方法1:使用rcParams設(shè)置
2.2.3 方法2:plot內(nèi)設(shè)置
2.2.4 方法3:plot內(nèi)簡化設(shè)置
方法2中,線條形狀,linestyle可簡寫為ls;線條寬度,linewidth可簡寫為lw;線條顏色,color可簡寫為c,等等。
打開Python,使用import導入numpy和matplotlib.pyplot模塊。輸入函數(shù)數(shù)據(jù),然后使用plt.show()展示繪制的圖像即可。
不寫出y=f(x)這樣的表達式,由隱函數(shù)的等式直接繪制圖像,以x2+y2+xy=1的圖像為例,使用sympy間接調(diào)用matplotlib工具的代碼和該二次曲線圖像如下(注意python里的乘冪符號是**而不是^,還有,python的sympy工具箱的等式不是a==b,而是a-b或者Eq(a,b),這幾點和matlab的區(qū)別很大)
直接在命令提示行的里面運行代碼的效果
from sympy import *;
x,y=symbols('x y');
plotting.plot_implicit(x**2+y**2+x*y-1);