From 98079e1fbde98317ed9af5fc781098ac4d99bb26 Mon Sep 17 00:00:00 2001 From: my1e5 <10064103+my1e5@users.noreply.github.com> Date: Tue, 10 Oct 2023 14:04:50 +0100 Subject: [PATCH] main : added auto-fit axis limits to plot update example. --- plots/plot_update_data.py | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/plots/plot_update_data.py b/plots/plot_update_data.py index 78131fa..64650f0 100644 --- a/plots/plot_update_data.py +++ b/plots/plot_update_data.py @@ -14,16 +14,20 @@ def generate_data(m: float, c: float): def update_plot(): data_x, data_y = generate_data(dpg.get_value("m_slider"), dpg.get_value("c_slider")) dpg.configure_item('line', x=data_x, y=data_y) + if dpg.get_value("auto_fit_checkbox"): + dpg.fit_axis_data("xaxis") + dpg.fit_axis_data("yaxis") -with dpg.window(): +with dpg.window(pos=(10,10)): with dpg.plot(label="y = mx + c", height=400, width=500): - xaxis = dpg.add_plot_axis(dpg.mvXAxis, label="x") - yaxis = dpg.add_plot_axis(dpg.mvYAxis, label="y") + dpg.add_plot_axis(dpg.mvXAxis, label="x", tag="xaxis") + dpg.add_plot_axis(dpg.mvYAxis, label="y", tag="yaxis") data_x, data_y = generate_data(M, C) - dpg.add_line_series(data_x, data_y, tag='line', parent=yaxis) + dpg.add_line_series(data_x, data_y, tag='line', parent="yaxis") dpg.add_slider_float(label="m", tag="m_slider", default_value=M, min_value=0, max_value=10, callback=update_plot) dpg.add_slider_float(label="c", tag="c_slider", default_value=C, min_value=-50, max_value=50, callback=update_plot) + dpg.add_checkbox(label="Auto-fit axis limits", tag="auto_fit_checkbox", default_value=False) dpg.create_viewport(width=900, height=600, title='Updating plot data') dpg.setup_dearpygui()