-
Notifications
You must be signed in to change notification settings - Fork 132
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Document rqt_plot backend as public API #236
Document rqt_plot backend as public API #236
Conversation
I will probably need feedback from @DorianScholz to merge one this big but I will take some time to test this either today or tomorrow. |
After moving this into rqt_py_common doesn't rqt_py_common depend on the plotting libraries now instead of rqt_plot? the package.xml should be changed to reflect that. edit Never mind I see what you are doing now, making it up to the implementing plugin to decide |
No, I think you're right; this should probably include moving the dependencies on plotting libraries into rqt_py_common. Just an oversight on my part. |
I don't see a reason why the plotting code should be moved to the common package. rqt_bag can just depend on the rqt_plot package. |
I'd like to see the plotting backend code moved out of rqt_plot, just so that anyone working on it has an understanding that's its used in more than one place. I don't really care where it ends up, but I would like it to be clear that this is common code and not just used by rqt_plot. Basically, I'd like to avoid having future changes to the plotting code break the rqt_bag plugin, because the author wasn't aware that it was used elsewhere. |
I agree with @trainman419 here. Isn't the whole point of py_common to house common code elements that are reusable/reused in multiple places? |
Yes, but consider the dependencies this refactoring implies. I another package now uses the rwt_py_common` stuff just to get a combo box containing topic names e.g. it pull in dependencies like matplot etc. Common is meant to contain "common" generic functionality - the plotting requires very specific additional dependencies and therefore I would think it should no go into common. Actually we should add this rational to the package description of It is perfectly valid to keep the code in the |
@dirk-thomas ok; I'll go with that approach. I'll update this so that it doesn't move the plotting code into rqt_py_common, and then just redo the last three days of work that I've done on top of that branch. |
Ok; updated this PR so that it leaves the data plotting backend in rqt_plot. |
Ok i'll try to get some time to look at the new versions. |
+1 This looks good. There seems to be consensus on this being a good change and my tests have revealed no issues. I plan to merge end of day today if there are no objections (roughly 6 hours from this post) |
3 days is like 6 hours right? |
Document rqt_plot backend as public API
Changes since 0.2.16: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Changelog for package rqt_reconfigure ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 0.3.8 (2014-07-15) ------------------ 0.3.7 (2014-07-11) ------------------ * fix slider bar, add context menus for common operations (`#251 <https://github.com/ros-visualization/rqt_common_plugins/issues/251>`_) * fix bug in float range calculations (`#241 <https://github.com/ros-visualization/rqt_common_plugins/issues/241>`_) * remove experimental suffix from rqt_reconfigure (`#256 <https://github.com/ros-visualization/rqt_common_plugins/issues/256>`_) * export architecture_independent flag in package.xml (`#254 <https://github.com/ros-visualization/rqt_common_plugins/issues/254>`_) 0.3.6 (2014-06-02) ------------------ * remove unnecessary margins to improve usability on small screens (`#228 <https://github.com/ros-visualization/rqt_common_plugins/issues/228>`_) 0.3.5 (2014-05-07) ------------------ * numerous improvements and bug fixes (`#209 <https://github.com/ros-visualization/rqt_common_plugins/pull/209>`_, `#210 <https://github.com/ros-visualization/rqt_common_plugins/pull/210>`_) * add option to open list of names from command line (`#214 <https://github.com/ros-visualization/rqt_common_plugins/pull/214>`_) 0.3.4 (2014-01-28) ------------------ 0.3.3 (2014-01-08) ------------------ * add groups for rqt plugins, renamed some plugins (`#167 <https://github.com/ros-visualization/rqt_common_plugins/issues/167>`_) * mark rqt_launch and rqt_reconfigure as experimental (`#167 <https://github.com/ros-visualization/rqt_common_plugins/issues/167>`_) 0.3.2 (2013-10-14) ------------------ 0.3.1 (2013-10-09) ------------------ 0.3.0 (2013-08-28) ------------------ * fix updating range limits (`#108 <https://github.com/ros-visualization/rqt_common_plugins/issues/108>`_) * fix layout quirks (`#150 <https://github.com/ros-visualization/rqt_common_plugins/issues/150>`_) * fix icon for closing a node (`#48 <https://github.com/ros-visualization/rqt_common_plugins/issues/48>`_) * fix handling of enum parameters with strings 0.2.17 (2013-07-04) ------------------- * Improvement; "GUI hangs for awhile or completely, when any one of nodes doesn't return any value" (`#81 <https://github.com/ros-visualization/rqt_common_plugins/issues/81>`_) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Changelog for package rqt_topic ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 0.3.8 (2014-07-15) ------------------ 0.3.7 (2014-07-11) ------------------ * export architecture_independent flag in package.xml (`#254 <https://github.com/ros-visualization/rqt_common_plugins/issues/254>`_) 0.3.6 (2014-06-02) ------------------ 0.3.5 (2014-05-07) ------------------ 0.3.4 (2014-01-28) ------------------ 0.3.3 (2014-01-08) ------------------ * add groups for rqt plugins, renamed some plugins (`#167 <https://github.com/ros-visualization/rqt_common_plugins/issues/167>`_) * catch and show exceptions `#198 <https://github.com/ros-visualization/rqt_common_plugins/issues/198>`_ 0.3.2 (2013-10-14) ------------------ 0.3.1 (2013-10-09) ------------------ * improve rqt_topic initialization time (`#62 <https://github.com/ros-visualization/rqt_common_plugins/issues/62>`_) * modified toggling topics to use checkbox instead of context menu (`#75 <https://github.com/ros-visualization/rqt_common_plugins/issues/75>`_) 0.3.0 (2013-08-28) ------------------ * fix cleaning old data in rqt_topic (fix `#74 <https://github.com/ros-visualization/rqt_common_plugins/issues/74>`_) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Changelog for package rqt_top ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 0.3.8 (2014-07-15) ------------------ 0.3.7 (2014-07-11) ------------------ * export architecture_independent flag in package.xml (`#254 <https://github.com/ros-visualization/rqt_common_plugins/issues/254>`_) 0.3.6 (2014-06-02) ------------------ 0.3.5 (2014-05-07) ------------------ 0.3.4 (2014-01-28) ------------------ * fix sort order for numerical fields (`#205 <https://github.com/ros-visualization/rqt_common_plugins/issues/205>`_) 0.3.3 (2014-01-08) ------------------ * add groups for rqt plugins, renamed some plugins (`#167 <https://github.com/ros-visualization/rqt_common_plugins/issues/167>`_) * fix an error caused by SIGKILLing nodes 0.3.2 (2013-10-14) ------------------ 0.3.1 (2013-10-09) ------------------ 0.3.0 (2013-08-28) ------------------ * remove copy of psutil module and implement missing function (`#105 <https://github.com/ros-visualization/rqt_common_plugins/issues/105>`_) 0.2.17 (2013-07-06) ------------------- * Embeds python-psutil in the package in order to be enabled on Ubuntu Precise * first release of this package into hydro ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Changelog for package rqt_image_view ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 0.3.8 (2014-07-15) ------------------ 0.3.7 (2014-07-11) ------------------ 0.3.6 (2014-06-02) ------------------ 0.3.5 (2014-05-07) ------------------ * list image transport topics if parent image topic is not available (`#215 <https://github.com/ros-visualization/rqt_common_plugins/issues/215>`_) 0.3.4 (2014-01-28) ------------------ 0.3.3 (2014-01-08) ------------------ * add groups for rqt plugins, renamed some plugins (`#167 <https://github.com/ros-visualization/rqt_common_plugins/issues/167>`_) * properly handle aligned images * wrap cv calls in try-catch-block (`#201 <https://github.com/ros-visualization/rqt_common_plugins/issues/201>`_) 0.3.2 (2013-10-14) ------------------ 0.3.1 (2013-10-09) ------------------ * fix event handling for rqt_image_view enabling to run multiple instances simultaneously (`#66 <https://github.com/ros-visualization/rqt_common_plugins/issues/66>`_) * add rqt_image_view to global bin (`#168 <https://github.com/ros-visualization/rqt_common_plugins/issues/168>`_) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Changelog for package rqt_bag_plugins ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 0.3.8 (2014-07-15) ------------------ * fix missing installation of resource subfolder 0.3.7 (2014-07-11) ------------------ * add plotting plugin (`#239 <https://github.com/ros-visualization/rqt_common_plugins/issues/239>`_) * fix rqt_bag to plot array members (`#253 <https://github.com/ros-visualization/rqt_common_plugins/issues/253>`_) * export architecture_independent flag in package.xml (`#254 <https://github.com/ros-visualization/rqt_common_plugins/issues/254>`_) 0.3.6 (2014-06-02) ------------------ 0.3.5 (2014-05-07) ------------------ * fix PIL/Pillow error (`#224 <https://github.com/ros-visualization/rqt_common_plugins/issues/224>`_) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Changelog for package rqt_plot ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 0.3.8 (2014-07-15) ------------------ * fix missing installation of Python subpackage 0.3.7 (2014-07-11) ------------------ * fix missing import (`#248 <https://github.com/ros-visualization/rqt_common_plugins/issues/248>`_) * significant improvements and unification of different plot backends (`#239 <https://github.com/ros-visualization/rqt_common_plugins/issues/239>`_, `#231 <https://github.com/ros-visualization/rqt_common_plugins/issues/231>`_) * make more things plottable including arrays and simple message types (`#246 <https://github.com/ros-visualization/rqt_common_plugins/issues/246>`_) * make DataPlot a proxy for its plot widget, redraw after loading new data, add clear_values (`#236 <https://github.com/ros-visualization/rqt_common_plugins/issues/236>`_) * export architecture_independent flag in package.xml (`#254 <https://github.com/ros-visualization/rqt_common_plugins/issues/254>`_) 0.3.6 (2014-06-02) ------------------ * subscribe to any known topic, even if currently not available (`#233 <https://github.com/ros-visualization/rqt_common_plugins/pull/233>`_) 0.3.5 (2014-05-07) ------------------ * change minimum padding to enable viewing arbitrarily small values (`#223 <https://github.com/ros-visualization/rqt_common_plugins/pull/223>`_) * redraw plot only on new data to reduce cpu load, especially with matplot (`#219 <https://github.com/ros-visualization/rqt_common_plugins/issues/219>`_) 0.3.4 (2014-01-28) ------------------ 0.3.3 (2014-01-08) ------------------ * add groups for rqt plugins, renamed some plugins (`#167 <https://github.com/ros-visualization/rqt_common_plugins/issues/167>`_) * add checkbox to toggle automatic scrolling of plot with data * add simple legend for pyqtgraph backend 0.3.2 (2013-10-14) ------------------ 0.3.1 (2013-10-09) ------------------ 0.3.0 (2013-08-28) ------------------ * fix waiting on unpublished topics (`#110 <https://github.com/ros-visualization/rqt_common_plugins/issues/110>`_) * fix rendering of icons on OS X (`ros-visualization/rqt#83 <https://github.com/ros-visualization/rqt/issues/83>`_) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Changelog for package rqt_console ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 0.3.8 (2014-07-15) ------------------ 0.3.7 (2014-07-11) ------------------ * export architecture_independent flag in package.xml (`#254 <https://github.com/ros-visualization/rqt_common_plugins/issues/254>`_) 0.3.6 (2014-06-02) ------------------ 0.3.5 (2014-05-07) ------------------ 0.3.4 (2014-01-28) ------------------ 0.3.3 (2014-01-08) ------------------ * add groups for rqt plugins, renamed some plugins (`#167 <https://github.com/ros-visualization/rqt_common_plugins/issues/167>`_) * use icons instead of text when available, refactor pause/resume button 0.3.2 (2013-10-14) ------------------ 0.3.1 (2013-10-09) ------------------ * rewrite of rqt_console to drastically improve performance (`#186 <https://github.com/ros-visualization/rqt_common_plugins/pull/186>`_) 0.3.0 (2013-08-28) ------------------ * pause button no more saves state (`#125 <https://github.com/ros-visualization/rqt_common_plugins/issues/125>`_) * persist message limit (`#138 <https://github.com/ros-visualization/rqt_common_plugins/issues/138>`_) * add ability to set logger level (`#117 <https://github.com/ros-visualization/rqt_common_plugins/issues/117>`_) * add tooltips to table cells (`#143 <https://github.com/ros-visualization/rqt_common_plugins/issues/143>`_) * improve labels for filters (`#146 <https://github.com/ros-visualization/rqt_common_plugins/issues/146>`_) * fix time column when loading data from file (`#160 <https://github.com/ros-visualization/rqt_common_plugins/issues/160>`_) * fix applying message limit on change (`#133 <https://github.com/ros-visualization/rqt_common_plugins/issues/133>`_) * fix clear button to remove all messages (`#141 <https://github.com/ros-visualization/rqt_common_plugins/issues/141>`_) * fix sorting to use row index to decide order between equal values (except for time column) (`#124 <https://github.com/ros-visualization/rqt_common_plugins/issues/124>`_) * fix locking of message queue * fix rendering of icons on OS X (`ros-visualization/rqt#83 <https://github.com/ros-visualization/rqt/issues/83>`_) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Changelog for package rqt_graph ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 0.3.8 (2014-07-15) ------------------ 0.3.7 (2014-07-11) ------------------ * fix compatibility with Groovy, use TopicStatistics only if available (`#252 <https://github.com/ros-visualization/rqt_common_plugins/issues/252>`_) * export architecture_independent flag in package.xml (`#254 <https://github.com/ros-visualization/rqt_common_plugins/issues/254>`_) 0.3.6 (2014-06-02) ------------------ 0.3.5 (2014-05-07) ------------------ * add displaying of topic/connection statistics along edges (`#214 <https://github.com/ros-visualization/rqt_common_plugins/pull/214>`_) * using CATKIN_ENABLE_TESTING to optionally configure tests (`#220 <https://github.com/ros-visualization/rqt_common_plugins/pull/220>`_) 0.3.4 (2014-01-28) ------------------ 0.3.3 (2014-01-08) ------------------ * add groups for rqt plugins, renamed some plugins (`#167 <https://github.com/ros-visualization/rqt_common_plugins/issues/167>`_) 0.3.2 (2013-10-14) ------------------ 0.3.1 (2013-10-09) ------------------ * modified zooming method to work better on high-res trackpads like Macbook Pros (`#187 <https://github.com/ros-visualization/rqt_common_plugins/pull/187>`_) 0.3.0 (2013-08-28) ------------------ * fix rendering of icons on OS X (`ros-visualization/rqt#83 <https://github.com/ros-visualization/rqt/issues/83>`_) 0.2.17 (2013-07-04) ------------------- * Improve checkbox labels and tooltips wording.
This builds on top of #232 and moves the DataPlot class into rqt_py_common.data_plot
It also adds documentation, and adds a clear_values method to facilitate implementation of #231
Merge after #232