Cześć!
Na studiach robię projekt w pythonie, pyqt oraz qt designera. Działa już nieźle, ale mam problem z dodaniem do okna MplWidget wykresu. Ma pokazywać w zależności jaką kryptowalutę wybiore. Przyznam nie jestem wybitnym programistą, tyle ogarniam co na zajęciach na studiach. Siedzę i szukam rozwiązań, ale znaleźć nie mogę, mam nadzieję, że tutaj ktoś pomoże i wyciągnę lekcję na przyszlość.
bitcoin.py

from PyQt6 import QtCore, QtGui, QtWidgets
import PyQt6

from pycoingecko import CoinGeckoAPI
import matplotlib.pyplot as plt
import draw_charts

import matplotlib
matplotlib.use('Qt5Agg')
from matplotlib.backends.backend_qt5agg import FigureCanvasQTAgg
from matplotlib.figure import Figure

class MplWidget(FigureCanvasQTAgg):
    def __init__(self, parent=None, width=5, height=4, dpi=100):
        fig = Figure(figsize=(width, height), dpi=dpi)
        self.axes = fig.add_subplot(111)
        super(MplWidget, self).__init__(fig)

class Ui_MainWindow(object):
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(800, 600)
        self.centralwidget = QtWidgets.QWidget(MainWindow)
        self.centralwidget.setObjectName("centralwidget")
        self.MplWdiget = MplWidget(self.centralwidget)
        self.MplWdiget.setGeometry(QtCore.QRect(20, 140, 751, 431))
        self.MplWdiget.setObjectName("MplWdiget")
        self.layoutWidget = QtWidgets.QWidget(self.centralwidget)
        self.layoutWidget.setGeometry(QtCore.QRect(52, 32, 701, 36))
        self.layoutWidget.setObjectName("layoutWidget")
        self.horizontalLayout = QtWidgets.QHBoxLayout(self.layoutWidget)
        self.horizontalLayout.setContentsMargins(0, 0, 0, 0)
        self.horizontalLayout.setObjectName("horizontalLayout")
        self.label = QtWidgets.QLabel(self.layoutWidget)
        font = QtGui.QFont()
        font.setPointSize(14)
        font.setBold(True)
        font.setWeight(75)
        self.label.setFont(font)
        self.label.setObjectName("label")
        self.horizontalLayout.addWidget(self.label)
        self.comboBox = QtWidgets.QComboBox(self.layoutWidget)
        font = QtGui.QFont()
        font.setPointSize(14)
        self.comboBox.setFont(font)
        self.comboBox.setObjectName("comboBox")
        self.comboBox.addItem("")
        self.comboBox.addItem("")
        self.comboBox.addItem("")
        self.comboBox.addItem("")
        self.comboBox.addItem("")
        self.comboBox.addItem("")
        self.horizontalLayout.addWidget(self.comboBox)
        self.layoutWidget1 = QtWidgets.QWidget(self.centralwidget)
        self.layoutWidget1.setGeometry(QtCore.QRect(60, 90, 981, 38))
        self.layoutWidget1.setObjectName("layoutWidget1")
        self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.layoutWidget1)
        self.horizontalLayout_2.setContentsMargins(0, 0, 0, 0)
        self.horizontalLayout_2.setObjectName("horizontalLayout_2")
        self.label_coin = QtWidgets.QLabel(self.layoutWidget1)
        font = QtGui.QFont()
        font.setPointSize(18)
        font.setBold(True)
        font.setWeight(75)
        self.label_coin.setFont(font)
        self.label_coin.setObjectName("label_coin")
        self.horizontalLayout_2.addWidget(self.label_coin)
        self.label_price = QtWidgets.QLabel(self.layoutWidget1)

        self.comboBox.currentTextChanged.connect(self.aktualna_cena)
        
        font = QtGui.QFont()
        font.setPointSize(18)
        font.setBold(True)
        font.setWeight(75)
        self.label_price.setFont(font)
        self.label_price.setObjectName("label_price")
        self.horizontalLayout_2.addWidget(self.label_price)
        MainWindow.setCentralWidget(self.centralwidget)

        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)

    def aktualna_cena(self):
        cg = CoinGeckoAPI()
        item = self.comboBox.currentText()
        if item == "BTC":
            btc = cg.get_price(ids = 'bitcoin', vs_currencies = 'pln')
            self.label_coin.setText('BTC kosztuje: ')
            self.label_price.setText(str(btc['bitcoin']['pln']) + ' zł')
            btcplot = MplWidget(self, width= 5, height = 4, dpi = 100)
            btcplot.axes.plot(draw_charts.market_info_btc)
            self.show()
        if item == "USDT":
            usdt = cg.get_price(ids = 'tether', vs_currencies= 'pln')
            self.label_coin.setText('USDT kosztuje: ')
            self.label_price.setText(str(usdt['tether']['pln']) + ' zł')
        if item == "BCC":
            bcc = cg.get_price(ids = 'bitcoin-cash', vs_currencies= 'pln')
            self.label_coin.setText('BCC kosztuje: ')
            self.label_price.setText(str(bcc['bitcoin-cash']['pln']) + ' zł')
        if item == "DogeCoin":
            dogecoin = cg.get_price(ids = 'dogecoin', vs_currencies= 'pln')
            self.label_coin.setText('DogeCoin kosztuje: ')
            self.label_price.setText(str(dogecoin['dogecoin']['pln']) + ' zł')
        if item == "LUNA":
            luna = cg.get_price(ids = 'terra-luna', vs_currencies= 'pln')
            self.label_coin.setText('Luna kosztuje: ')
            self.label_price.setText(str(luna['terra-luna']['pln']) + ' zł')
        if item == "ETH":
            ethereum = cg.get_price(ids = 'ethereum', vs_currencies= 'pln')
            self.label_coin.setText('Ethereum kosztuje: ')
            self.label_price.setText(str(ethereum['ethereum']['pln']) + ' pln')

    def retranslateUi(self, MainWindow):
        _translate = QtCore.QCoreApplication.translate
        MainWindow.setWindowTitle(_translate("MainWindow", "CryptoCharts"))
        self.label.setText(_translate("MainWindow", "Wybierz kryptowalute:"))
        self.comboBox.setItemText(0, _translate("MainWindow", "BTC"))
        self.comboBox.setItemText(1, _translate("MainWindow", "USDT"))
        self.comboBox.setItemText(2, _translate("MainWindow", "BCC"))
        self.comboBox.setItemText(3, _translate("MainWindow", "DogeCoin"))
        self.comboBox.setItemText(4, _translate("MainWindow", "LUNA"))
        self.comboBox.setItemText(5, _translate("MainWindow", "ETH"))
        self.label_coin.setText(_translate("MainWindow", "TextLabel"))
        self.label_price.setText(_translate("MainWindow", "TextLabel"))



if __name__ == "__main__":
    import sys
    app = QtWidgets.QApplication(sys.argv)
    MainWindow = QtWidgets.QMainWindow()
    ui = Ui_MainWindow()
    ui.setupUi(MainWindow)
    MainWindow.show()
    sys.exit(app.exec())

draw_charts.py

import datetime
from sqlite3 import Timestamp
from urllib import response
from matplotlib.markers import MarkerStyle
from requests import request
import requests
import pandas as pd
import matplotlib as plt

def dostepne_crypto():
        url = f'https://api.coingecko.com/api/v3/coins' 
        response = requests.get(url)
        data = response.json()

        id_crypto = []

        for asset in data:
            id_crypto.append(asset['id'])

        return id_crypto

def pobierz_wykres(coin_id = 'bitcoin', vs_currency = 'eur', days = 'max', interval = 'daily'):
    ids_crypto = dostepne_crypto()
    if coin_id in ids_crypto:
        url = f'https://api.coingecko.com/api/v3/coins/{coin_id}/market_chart'
        payload = {'vs_currency': vs_currency, 'days': days, 'interval': interval}
        response = requests.get(url, params = payload)
        data = response.json()

        timestamp_list, price_list = [], []

        for price in data['prices']:
            timestamp_list.append(datetime.datetime.fromtimestamp(price[0]/1000))
            price_list.append(price[1])

        # wyświetlenie danych w pandas
        raw_data = {'timestamp': timestamp_list, 'price': price_list}
        df = pd.DataFrame(raw_data)
        return df

market_info_btc = pobierz_wykres('bitcoin', 'pln', '30')
market_info_usdt = pobierz_wykres('tether', 'pln', '30')
market_info_luna = pobierz_wykres('terra-luna', 'pln', '30')
market_info_doge = pobierz_wykres('dogecoin', 'pln', '30')
market_info_bcc = pobierz_wykres('bitcoin-cash', 'pln', '30')
market_info_eth = pobierz_wykres('ethereum', 'pln', '30')