import threading from time import sleep from serverside.myIOs import readStupidData from serverside.myIOs import readStupidData2 from serverside.figTest import FigTest as FigTests from clientside.figTest import FigTest as FigTestc # This is for the double figure from serverside.figTest import FigTest2 as FigTests2 from clientside.figTest import FigTest2 as FigTestc2 SERVER_IOFUNCTIONS = {'readStupidData': readStupidData,'readStupidData2': readStupidData2} SERVER_FIGURES = {'FigTest': FigTests,'FigTest2': FigTests2} import serverside.myplotlib as mpl_server import clientside.myplotlib as mpl_client server = mpl_server.MplServer2(port=12345, knownFunctions=SERVER_IOFUNCTIONS, knownFigures=SERVER_FIGURES) client = mpl_client.MplClient2() server.run(as_daemon=True) print("Server loop running in thread:", server.server_thread.name) client.connect(('localhost', 12345)) print("Client is now connected") client.readData('readStupidData', 'data1') fig1 = client.newSyncFigure(FigTestc, ('data1',)) win=mpl_client.MyWin(fig1) sleep(2) # update test fig1.update(xRange=[-2, 2],yRange=[-2, 2]) win.refresh() sleep(2) # multiple figures with multiple data client.readData('readStupidData2', 'data2') print("known datasets: ",client.listRemoteData()) fig2 = client.newSyncFigure(FigTestc2, ('data1','data2'), xRange_p1=[-2.0, 2.0], xRange_p2=[-3, 3], yRange=[-2.0, 2.0]) print('current state:::',fig2.getState()) win=mpl_client.MyWin(fig2) sleep(2) # desync resync test fig1.deSyncFig() fig1.reSyncFig()