graphlet_stack_plot¶
- graphlet_stack_plot(netin, ax, q=10, cmap='Reds', gridcolor='k', borderwidth=2, bordercolor=None, Fs=1, timeunit='', t0=1, sharpen='yes', vminmax='minmax')[source]¶
Returns matplotlib axis handle for graphlet_stack_plot. This is a row of transformed connectivity matrices to look like a 3D stack.
- Parameters:
netin (array, dict) – network input (graphlet or contact)
ax (matplotlib ax handles.)
q (int) – Quality. Increaseing this will lead to smoother axis but take up more memory.
cmap (str) – Colormap (matplotlib) of graphlets
Fs (int) – Sampling rate. Same as contact-representation (if netin is contact, and input is unset, contact dictionary is used)
timeunit (str) – Unit of time for xlabel. Same as contact-representation (if netin is contact, and input is unset, contact dictionary is used)
t0 (int) – What should the first time point be called. Should be integer. Default 1.
gridcolor (str) – The color of the grid section of the graphlets. Set to ‘none’ if not wanted.
borderwidth (int) – Scales the size of border.
bordorcolor – color of the border (at the moment it must be in RGB values between 0 and 1 -> this will be changed sometime in the future). Default: black.
vminmax (str) – ‘maxabs’, ‘minmax’ (default), or list/array with length of 2. Specifies the min and max colormap value of graphlets. Maxabs entails [-max(abs(G)),max(abs(G))], minmax entails [min(G), max(G)].
- Returns:
ax
- Return type:
matplotlib ax handle
Note
This function can require a lot of RAM with larger networks.
Note
At the momenet bordercolor cannot be set to zero. To remove border, set bordorwidth=1 and bordercolor=[1,1,1] for temporay workaround.
Examples
Create a network with some metadata
>>> import numpy as np >>> import teneto >>> import matplotlib.pyplot as plt >>> np.random.seed(2017) # For reproduceability >>> N = 5 # Number of nodes >>> T = 10 # Number of timepoints >>> # Probability of edge activation >>> birth_rate = 0.2 >>> death_rate = .9 >>> # Add node names into the network and say time units are years, go 1 year per graphlet and startyear is 2007 >>> cfg={} >>> cfg['Fs'] = 1 >>> cfg['timeunit'] = 'Years' >>> cfg['t0'] = 2007 #First year in network >>> #Generate network >>> C = teneto.generatenetwork.rand_binomial([N,T],[birth_rate, death_rate],'contact','bu',netinfo=cfg)
Now this network can be plotted
>>> fig,ax = plt.subplots(figsize=(10,3)) >>> ax = teneto.plot.graphlet_stack_plot(C,ax,q=10,cmap='Greys') >>> fig.show()