91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

資源簡介

[計算方法作業(yè)]利用python中matplotlib實現(xiàn)繪制龍貝格公式和變步長梯形法圖像,利用龍貝格公式及變步長積分兩種算法計算定積分,用python中的matplotlib庫繪制圖像

資源截圖

代碼片段和文件信息

import?sys
from?PyQt5.QtWidgets?import?QApplication?QMainWindow?QSizePolicy?QPushButton
from?matplotlib.backends.backend_qt5agg?import?FigureCanvasQTAgg?as?FigureCanvas
from?matplotlib.figure?import?Figure
import?matplotlib.pyplot?as?plt
import?numpy?as?np

#顯示中文和負數(shù)
plt.rcParams[‘font.sans-serif‘]=[‘SimHei‘]
plt.rcParams[‘axes.unicode_minus‘]=False

class?App(QMainWindow):
????def?__init__(self):
????????super().__init__()
????????self.initUI()
????def?initUI(self):
????????self.setWindowtitle(“數(shù)值積分“)
????????self.setGeometry(200?50?800?600)
????????m?=?Integration(self?width=7?height=6)#實例化一個畫布對象
????????m.move(0?0)

????????#設置龍貝格按鈕
????????button?=?QPushButton(‘龍貝格算法‘?self)
????????button.move(700?75)
????????button.resize(100?75)
????????button.clicked.connect(m.Romberg1)

????????#設置變步長積分按鈕
????????button?=?QPushButton(‘變步長積分‘?self)
????????button.move(700?450)
????????button.resize(100?75)
????????button.clicked.connect(m.trap1)
????????self.show()

#數(shù)值積分類
class?Integration(FigureCanvas):
????def?__init__(self?parent=None?width=5?height=4?dpi=100?):
????????fig?=?Figure(figsize=(width?height)?dpi=dpi?frameon=False)
????????self.axes=[]
????????self.axes1?=?fig.add_subplot(211)
????????self.axes2?=?fig.add_subplot(212)
????????FigureCanvas.__init__(self?fig)
????????self.setParent(parent)

????????FigureCanvas.setSizePolicy(selfQSizePolicy.Expanding
???????????????????????????????????QSizePolicy.Expanding)
????????FigureCanvas.updateGeometry(self)
????????self.a=0
????????self.b=6
????????self.eps=0.0001
????????#挪動坐標位置
????????self.axes1.set_xlim(06)
????????self.axes2.set_xlim(06)
????????#去掉邊框
????????self.axes1.spines[‘top‘].set_color(‘none‘)
????????self.axes1.spines[‘right‘].set_color(‘none‘)
????????#移位置?設為原點相交
????????self.axes1.xaxis.set_ticks_position(‘bottom‘)
????????self.axes1.spines[‘bottom‘].set_position((‘data‘0))
????????self.axes1.yaxis.set_ticks_position(‘left‘)
????????self.axes1.spines[‘left‘].set_position((‘data‘0))
????????#去掉邊框
????????self.axes2.spines[‘top‘].set_color(‘none‘)
????????self.axes2.spines[‘right‘].set_color(‘none‘)
????????#移位置?設為原點相交
????????self.axes2.xaxis.set_ticks_position(‘bottom‘)
????????self.axes2.spines[‘bottom‘].set_position((‘data‘0))
????????self.axes2.yaxis.set_ticks_position(‘left‘)
????????self.axes2.spines[‘left‘].set_position((‘data‘0))
????????#初始為畫圖
????????self.x=np.linspace(06)
????????self.y=[self.func(i)?for?i?in?self.x]
????

評論

共有 條評論