Skip to content
Snippets Groups Projects
Commit 3ad414e4 authored by felix's avatar felix
Browse files

update draw and dual

parent a750d3f1
No related branches found
No related tags found
No related merge requests found
...@@ -26,7 +26,7 @@ def initialize_dual_circuit_from_networkx(input_graph1,input_graph2,e_adj): ...@@ -26,7 +26,7 @@ def initialize_dual_circuit_from_networkx(input_graph1,input_graph2,e_adj):
kirchhoff_dual_graph=dual_circuit() kirchhoff_dual_graph=dual_circuit()
kirchhoff_dual_graph.circuit_init_from_networkx([input_graph1,input_graph2] ) kirchhoff_dual_graph.circuit_init_from_networkx([input_graph1,input_graph2] )
kirchhoff_dual_graph=e_adj # kirchhoff_dual_graph=e_adj
return kirchhoff_dual_graph return kirchhoff_dual_graph
...@@ -128,8 +128,8 @@ class dual_circuit(): ...@@ -128,8 +128,8 @@ class dual_circuit():
# output # output
def plot_circuit(self): def plot_circuit(self,**kwargs):
fig=dx.plot_networkx_dual(self) fig=dx.plot_networkx_dual(self,**kwargs)
return fig return fig
...@@ -337,12 +337,12 @@ class flow_circuit(circuit,object): ...@@ -337,12 +337,12 @@ class flow_circuit(circuit,object):
return dn return dn
def get_edges_data(self,pars): def get_edges_data(self,**kwargs):
de=pd.DataFrame(self.edges[['conductivity','flow_rate']]) de=pd.DataFrame(self.edges[['conductivity','flow_rate']])
if 'width' in pars: if 'width' in kwargs:
de['weight']=np.absolute(self.edges[pars['width']].to_numpy())*self.draw_weight_scaling de['weight']=np.absolute(self.edges[kwargs['width']].to_numpy())*self.draw_weight_scaling
else: else:
de['weight']=np.power(self.edges['conductivity'].to_numpy(),0.25)*self.draw_weight_scaling de['weight']=np.power(self.edges['conductivity'].to_numpy(),0.25)*self.draw_weight_scaling
...@@ -353,9 +353,9 @@ class flow_circuit(circuit,object): ...@@ -353,9 +353,9 @@ class flow_circuit(circuit,object):
return de return de
def plot_circuit(self,pars={}): def plot_circuit(self, **kwargs):
E=self.get_edges_data(pars) E=self.get_edges_data(**kwargs)
V=self.get_nodes_data() V=self.get_nodes_data()
self.set_pos() self.set_pos()
......
...@@ -235,9 +235,13 @@ class flux_circuit(flow_circuit,object): ...@@ -235,9 +235,13 @@ class flux_circuit(flow_circuit,object):
return dn return dn
def get_edges_data(self): def get_edges_data(self, **kwargs):
de=pd.DataFrame(self.edges[['conductivity','flow_rate','absorption','uptake','peclet','length']]) de=pd.DataFrame(self.edges[['conductivity','flow_rate','absorption','uptake','peclet','length']])
de['weight']=np.power(self.edges['conductivity'].to_numpy(),0.25)*self.draw_weight_scaling
if 'width' in kwargs:
de['weight']=np.absolute(self.edges[kwargs['width']].to_numpy())*self.draw_weight_scaling
else:
de['weight']=np.power(self.edges['conductivity'].to_numpy(),0.25)*self.draw_weight_scaling
return de return de
...@@ -266,3 +266,15 @@ class circuit: ...@@ -266,3 +266,15 @@ class circuit:
fig=dx.plot_networkx( self.G, edge_list=self.list_graph_edges, node_list=self.list_graph_nodes ) fig=dx.plot_networkx( self.G, edge_list=self.list_graph_edges, node_list=self.list_graph_nodes )
return fig return fig
def get_nodes_data(self):
dn=pd.DataFrame(self.nodes[['source','label']])
return dn
def get_edges_data(self):
de=pd.DataFrame(self.edges[['conductivity','flow_rate']])
return de
...@@ -58,8 +58,8 @@ def plot_networkx_dual(dual_graph,**kwargs): ...@@ -58,8 +58,8 @@ def plot_networkx_dual(dual_graph,**kwargs):
for i,K in enumerate(dual_graph.layer): for i,K in enumerate(dual_graph.layer):
options['network_id']=i options['network_id']=i
node_data=K.get_nodes_data() node_data=K.get_nodes_data(**kwargs)
edges_data=K.get_edges_data() edges_data=K.get_edges_data(**kwargs)
add_traces_nodes(fig,options,K.G,node_data) add_traces_nodes(fig,options,K.G,node_data)
add_traces_edges(fig,options,K.G,edges_data) add_traces_edges(fig,options,K.G,edges_data)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment