Good evening I have the following code:
The error that occurs to me is that when I print the size of self.widget.width()
I get the value of 100 while in the QT Designer I show that the value is 450
The second error is that when you pass the value to the graph using visual.pygal.Line(width=self.widget.width())
, it maintains that static value and does not change the value as the widget increases or decreases the value of its width ()
from PyQt5.QtWidgets import QMainWindow,QApplication
from PyQt5 import uic
from PyQt5.QtCore import QUrl
from PyQt5.QtWebEngineWidgets import QWebEngineView
import pygal
from pygal.style import BlueStyle
class nGrafico(QMainWindow):
def __init__(self):
QMainWindow.__init__(self)
uic.loadUi("n_grafico.ui",self)
Self.graf (1,2,3,4,5,6)
def graf(self,l,l1,l2,l3,l4,l5):
print(self.widget.width())
visual = pygal.Line(style=BlueStyle,title=u"Reporte de Internet",legend_at_bottom=True)
visual.x_labels=[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31]
visual.add("Internet Matutino", l)
visual.add("Internet Vespertino", l1)
data = visual.render_data_uri()
self.widget.setUrl(QUrl(data))
self.graf2(l2,l3)
self.graf3(l4,l5)
def graf2(self,l,l1):
visual = pygal.Line(style=BlueStyle,title="Reporte de Recargas",legend_at_bottom=True)
visual.x_labels=[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31]
visual.add("Recargas Matutino", l)
visual.add("Recargas Vespertino", l1)
data = visual.render_data_uri()
self.widget2.setUrl(QUrl(data))
def graf3(self,l,l1):
visual = pygal.Line(style=BlueStyle,title="Reporte de Sistema",legend_at_bottom=True)
visual.x_labels=[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31]
visual.add("Sistema Matutino", l)
visual.add("Sistema Vespertino", l1)
data = visual.render_data_uri()
self.widget3.setUrl(QUrl(data))
#app = QApplication([])
#n = nGrafico()
#n.show()
#app.exec_()
File .ui.
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>MainWindow</class>
<widget class="QMainWindow" name="MainWindow">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>875</width>
<height>581</height>
</rect>
</property>
<property name="windowTitle">
<string>MainWindow</string>
</property>
<widget class="QWidget" name="centralwidget">
<layout class="QGridLayout" name="gridLayout">
<property name="leftMargin">
<number>0</number>
</property>
<property name="topMargin">
<number>0</number>
</property>
<property name="rightMargin">
<number>0</number>
</property>
<property name="bottomMargin">
<number>0</number>
</property>
<property name="spacing">
<number>0</number>
</property>
<item row="1" column="1">
<widget class="QWebEngineView" name="widget4" native="true"/>
</item>
<item row="0" column="1">
<widget class="QWebEngineView" name="widget2" native="true"/>
</item>
<item row="1" column="0">
<widget class="QWebEngineView" name="widget3" native="true"/>
</item>
<item row="0" column="0">
<widget class="QWebEngineView" name="widget" native="true"/>
</item>
</layout>
</widget>
</widget>
<customwidgets>
<customwidget>
<class>QWebEngineView</class>
<extends>QWidget</extends>
<header>PyQt5.QtWebEngineWidgets</header>
<container>1</container>
</customwidget>
</customwidgets>
<resources/>
<connections/>
</ui>