mirror of
https://github.com/Sani7/remote-ui.git
synced 2026-10-27 06:01:14 +01:00
b plot
fix plot
This commit is contained in:
@@ -35,6 +35,12 @@ std::string UI_plot::y_label() const
|
|||||||
return m_y_label;
|
return m_y_label;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void UI_plot::add_value(double y)
|
||||||
|
{
|
||||||
|
m_x_vals.push_back((double)m_x_vals.size());
|
||||||
|
m_y_vals.push_back(y);
|
||||||
|
}
|
||||||
|
|
||||||
void UI_plot::add_value(double x, double y)
|
void UI_plot::add_value(double x, double y)
|
||||||
{
|
{
|
||||||
m_x_vals.push_back(x);
|
m_x_vals.push_back(x);
|
||||||
|
|||||||
@@ -20,6 +20,7 @@ class UI_plot : public UI_item
|
|||||||
bool x_label_enabled() const;
|
bool x_label_enabled() const;
|
||||||
void set_y_label_enabled(bool enabled);
|
void set_y_label_enabled(bool enabled);
|
||||||
bool y_label_enabled() const;
|
bool y_label_enabled() const;
|
||||||
|
void add_value(double y);
|
||||||
void add_value(double x, double y);
|
void add_value(double x, double y);
|
||||||
void clean_vals();
|
void clean_vals();
|
||||||
|
|
||||||
|
|||||||
@@ -535,10 +535,13 @@ void Simulator_base::process_ui_plot(json &uiItem)
|
|||||||
}
|
}
|
||||||
|
|
||||||
QString text = QString::fromStdString(uiItem["text"]);
|
QString text = QString::fromStdString(uiItem["text"]);
|
||||||
|
QColor bg_color = QColor(QString::fromStdString(uiItem["bg_color"]));
|
||||||
|
QColor color = QColor(QString::fromStdString(uiItem["fg_color"]));
|
||||||
QString x_label = QString::fromStdString(uiItem["x_label"]);
|
QString x_label = QString::fromStdString(uiItem["x_label"]);
|
||||||
QString y_label = QString::fromStdString(uiItem["y_label"]);
|
QString y_label = QString::fromStdString(uiItem["y_label"]);
|
||||||
|
|
||||||
std::vector<double> x_vals = (std::vector<double>)uiItem.at("x_vals");
|
std::vector<double> x_vals = (std::vector<double>)uiItem.at("x_vals");
|
||||||
std::vector<double> y_vals = (std::vector<double>)uiItem.at("x_vals");
|
std::vector<double> y_vals = (std::vector<double>)uiItem.at("y_vals");
|
||||||
|
|
||||||
if (text != plot->title().text())
|
if (text != plot->title().text())
|
||||||
{
|
{
|
||||||
@@ -555,9 +558,19 @@ void Simulator_base::process_ui_plot(json &uiItem)
|
|||||||
plot->setAxisTitle(QwtAxis::YLeft, y_label);
|
plot->setAxisTitle(QwtAxis::YLeft, y_label);
|
||||||
}
|
}
|
||||||
|
|
||||||
plot->curve()->setRawSamples(x_vals.data(), y_vals.data(), x_vals.capacity());
|
if (color != plot->curve()->pen().color())
|
||||||
plot->setAxisScale(QwtAxis::XBottom, x_vals[x_vals.capacity() - 1], x_vals[0]);
|
{
|
||||||
// plot_time[0], plot_time[api.get_plot_size() - 1] );
|
plot->curve()->setPen(QPen(color));
|
||||||
|
}
|
||||||
|
|
||||||
|
if (color == QColor(0x83, 0x91, 0x92))
|
||||||
|
{
|
||||||
|
plot->curve()->setPen(QPen(Qt::red));
|
||||||
|
}
|
||||||
|
|
||||||
|
plot->curve()->setSamples(x_vals.data(), y_vals.data(), x_vals.size());
|
||||||
|
if (x_vals.size() > 0)
|
||||||
|
plot->setAxisScale(QwtAxis::XBottom, x_vals[0], x_vals[x_vals.size() - 1]);
|
||||||
plot->replot();
|
plot->replot();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -68,7 +68,7 @@ void Test_Sim::slider_changed(UI_slider *id, double value)
|
|||||||
this->m_label.set_text(std::to_string(value));
|
this->m_label.set_text(std::to_string(value));
|
||||||
this->m_dial.set_value(value);
|
this->m_dial.set_value(value);
|
||||||
this->m_thermo.set_value(value);
|
this->m_thermo.set_value(value);
|
||||||
this->m_plot.add_value(value, value);
|
this->m_plot.add_value(value);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user