def plotGraph(self, pltax, offset0 = [600, -800], offset1 = [600, 800]):
self.regghalf[0].plotGraph(pltax, offset0)
self.regghalf[1].plotGraph(pltax, offset1)
# # add offset
for nid in self.gnodesplotpos.keys():
if nid.startswith('assrgt'):
self.gnodesplotpos[nid] = map(add, self.gnodesplotpos[nid], [offset0[0], 0])
if nid.startswith('asslft'):
self.gnodesplotpos[nid] = map(add, self.gnodesplotpos[nid], [offset1[0], 0])
# make composed gnodesplotpos
self.composedgnodesplotpos = {}
for key in self.gnodesplotpos.keys():
self.composedgnodesplotpos[key] = self.gnodesplotpos[key]
for key in self.regghalf[0].gnodesplotpos.keys():
self.composedgnodesplotpos[key] = self.regghalf[0].gnodesplotpos[key]
for key in self.regghalf[0].graphtpp.gnodesplotpos.keys():
self.composedgnodesplotpos[key] = self.regghalf[0].graphtpp.gnodesplotpos[key]
for key in self.regghalf[1].gnodesplotpos.keys():
self.composedgnodesplotpos[key] = self.regghalf[1].gnodesplotpos[key]
for key in self.regghalf[1].graphtpp.gnodesplotpos.keys():
self.composedgnodesplotpos[key] = self.regghalf[1].graphtpp.gnodesplotpos[key]
transitedges = []
transferedges = []
for nid0, nid1, reggedgedata in self.regg.edges(data=True):
if reggedgedata['edgetype'] is 'asstransit':
transitedges.append([self.composedgnodesplotpos[nid0][:2], self.composedgnodesplotpos[nid1][:2]])
if reggedgedata['edgetype'] is 'asstransfer':
transferedges.append([self.composedgnodesplotpos[nid0][:2], self.composedgnodesplotpos[nid1][:2]])
transitec = mc.LineCollection(transitedges, colors=[1,0,1,1], linewidths=1)
transferec = mc.LineCollection(transferedges, colors=[.5,.5,0,.03], linewidths=1)
pltax.add_collection(transferec)
pltax.add_collection(transitec)
评论列表
文章目录