Thanks a lot! I am a but busy these days but as soon as I get some chance I will try it out and will report!
Trifon On Fri, Nov 30, 2018 at 3:55 AM Patrick <[email protected]> wrote: > Hi, > > I have some multi-dimensional data which I slice in four plot windows. I > link the required axes manually by connecting to a signal emitted by a > ViewBox when its range is changed. > > Code snippet below, hopefully will get you on track. > > # Link axes of plots > self.overview.setYLink(self.t1slice) > self.overview.setXLink(self.t2slice) > self.t1slice.getViewBox().sigRangeChangedManually.connect(self. > _link_waxes_t1slice) > self.t2slice.getViewBox().sigRangeChangedManually.connect(self. > _link_waxes_t2slice) > self.spectrum.getViewBox().sigRangeChangedManually.connect(self. > _link_waxes_spectrum) > > > # Slot functions to react and change range of linked plots > def _link_waxes_t1slice(self, something): > self.t2slice.setYRange(*self.t1slice.getViewBox().viewRange()[0]) > self.spectrum.setXRange(*self.t1slice.getViewBox().viewRange()[0]) > > > def _link_waxes_t2slice(self, something): > self.t1slice.setXRange(*self.t2slice.getViewBox().viewRange()[1]) > self.spectrum.setXRange(*self.t2slice.getViewBox().viewRange()[1]) > > > def _link_waxes_spectrum(self, something): > self.t1slice.setXRange(*self.spectrum.getViewBox().viewRange()[0]) > self.t2slice.setYRange(*self.spectrum.getViewBox().viewRange()[0]) > > Patrick > > On Wednesday, 21 November 2018 19:10:10 UTC+10:30, Trifon Trifonov wrote: >> >> Dear All, >> >> First, sorry for the long post, but I feel you may need some introduction >> to the problem. >> >> I am developing an orbital analysis tool using PyQT5 and pyqtgraph! >> >> See: >> https://github.com/3fon3fonov/trifon >> >> My tool has a plotting area with ~15 plots shown in different tab >> windows, which show different aspects of the data analysis. >> >> The tool it self is assembled with the Designer-qt5, while the >> QGraphicView widgets are promoted to pyqtgraphs's PlotWidgets >> >> For example in the gui.py I initialize the plots like this: >> >> >>> def initialize_plots(self): >>> >>> global p1,p2,p3,p4,p5,p6,p7,p8,p9,p10,p11,p12,p13,p14,p15,pe >>> >>> p1 = self.graphicsView_timeseries_RV >>> p2 = self.graphicsView_timeseries_RV_o_c >>> p3 = self.graphicsView_timeseries_phot >>> p4 = self.graphicsView_timeseries_phot_o_c >>> p5 = self.graphicsView_timeseries_activity >>> p6 = self.graphicsView_timeseries_correlations >>> >> .... >> >> .... >>> >> pe = self.graphicsView_extra_plot >>> >> ..... >>> ..... >>> etc. >>> >> >> so p1-p6 in this case are different PlotWidget objects on which I add >> Items/Plot data, i.e. p1.plot(x,y), p1.addItem(), etc. >> >> >> What I want is to link pe to any of p1-p6!. pe is an extra plot so the >> user can choose from those already available/created. >> Thus the user can select which plot he/she wants to see next to the main >> plot. >> >> Lets imagine that the ComboBox dropdown menu selects between p1-p6 >> objects, so >> >> pe = p1, or later: >> pe = p4 >> >> for example. >> >> Is there any way this to be done with PyQtgraph? >> >> >> I really tried all kind things in the last two weeks and nothing seems to >> work. >> >> >> I am aware of the >> >> pe.setXLink(p1) >> pe.setYLink(p2) >> >> but this only links the axes not the plot object itself. It doesn't work >> for me. >> >> >> >> >> I hope you guys are willing to help! >> >> >> All the best, >> Trifon >> >> >> >> >> >> >> >> >> >> >> > -- > You received this message because you are subscribed to the Google Groups > "pyqtgraph" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To view this discussion on the web visit > https://groups.google.com/d/msgid/pyqtgraph/eca2eda3-83cd-41be-a293-148cd371170f%40googlegroups.com > <https://groups.google.com/d/msgid/pyqtgraph/eca2eda3-83cd-41be-a293-148cd371170f%40googlegroups.com?utm_medium=email&utm_source=footer> > . > For more options, visit https://groups.google.com/d/optout. > -- You received this message because you are subscribed to the Google Groups "pyqtgraph" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/pyqtgraph/CAB9SVJ1Cp%3DXukVR3XSFp2x5PKfHXmwppfLLwjaXOnoeof2RCBQ%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.
