有没有办法改变Qchart中x轴的字体大小属性?我所要做的就是当屏幕尺寸减小时,x 轴的数据大小会动态减小。为此,我使用 PySide2 和 Qchart。我还尝试在字符串中添加 h1 和 h2,但它没有动态变化。我有条形图的代码:
import sys
import PySide2.QtCharts
from PySide2 import QtCore
from PySide2.QtWidgets import *
from PySide2.QtGui import QBrush
set_pressure = 1000
actual_pressure = 0
actual_temperature = 50
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
# set Barset
set0 = PySide2.QtCharts.QtCharts.QBarSet('Set Pressure')
set0.append([set_pressure])
set1 = PySide2.QtCharts.QtCharts.QBarSet('Act Pressure')
set1.append([actual_pressure])
set2 = PySide2.QtCharts.QtCharts.QBarSet('Set Temperature')
set2.append([actual_temperature])
# set series
series = PySide2.QtCharts.QtCharts.QBarSeries()
series.setBarWidth(0.1)
series.append(set0)
series1 = PySide2.QtCharts.QtCharts.QBarSeries()
series1.setBarWidth(0.1)
series1.append(set1)
series2 = PySide2.QtCharts.QtCharts.QBarSeries()
series2.setBarWidth(0.1)
series2.append(set2)
# create chart
chart = PySide2.QtCharts.QtCharts.QChart()
chart.addSeries(series)
chart.addSeries(series1)
chart.addSeries(series2)
setPressureMsg = '<center><p style="color:Red;">Set<br>Pressure<br>' + str(set_pressure) + '<center></p>'
actualPressureMsg = '<center><p style="color:green;">Actual<br>Pressure<br>' + str(actual_pressure) + '<center></p> '
actualTemperatureMsg = '<center><p style="color:blue;">Actual<br>Temp<br>' + str(actual_temperature) + '<center></p> '
xAxisData = (setPressureMsg, actualPressureMsg, actualTemperatureMsg)
axisX = PySide2.QtCharts.QtCharts.QBarCategoryAxis()
axisX.append(xAxisData)
chart.addAxis(axisX, QtCore.Qt.AlignBottom)
axisY = PySide2.QtCharts.QtCharts.QValueAxis()
chart.addAxis(axisY, QtCore.Qt.AlignLeft)
series.attachAxis(axisY)
series1.attachAxis(axisY)
axisY1 = PySide2.QtCharts.QtCharts.QValueAxis()
chart.addAxis(axisY1, QtCore.Qt.AlignRight)
series2.attachAxis(axisY1)
chartView = PySide2.QtCharts.QtCharts.QChartView(chart)
self.setCentralWidget(chartView)
self.showMaximized()
if __name__ == '__main__':
app = QApplication(sys.argv)
window = MainWindow()
window.show()
sys.exit(app.exec_())