#ifndef COALDISTRIBUTBARCHARTWIDGET_H #define COALDISTRIBUTBARCHARTWIDGET_H #include #include #include #include #include #include #include #include #include #include QT_CHARTS_USE_NAMESPACE class CoalDistributBarChartWidget : public QWidget { Q_OBJECT public: explicit CoalDistributBarChartWidget(QWidget* parent = nullptr); private slots: void updateChart(); private: void initializeChart(); void setupTimer(); private: QChart* m_chart; QChartView* m_chartView; QBarSeries* m_series; QTimer* m_timer; QDateTimeAxis* m_axisX; int currentIndex; // 当前更新的柱子的索引 static const int MaxDataPoints = 300; // 最大数据点数(5分钟,每秒1条) QBarSet* m_set; // QList m_timeLabels; QList m_timeLabels; // 存储时间标签 QList m_values; // 存储比例值 // QList timestamps; // 存储时间戳 }; #endif // COALDISTRIBUTBARCHARTWIDGET_H