使用matplotlib 画多个networkx图

import numpy as np
import networkx as nx
import matplotlib.pyplot as plt

G = nx.Graph()
edgelist = [(0,1),(0,2),(0,3),(1,3)]
G.add_edges_from(edgelist)

fig = plt.figure()
ax = fig.add_subplot(1,2,1)
option = {
    
    'font_family':'serif', 'font_size':'15', 'font_weight':'semibold'}
nx.draw_networkx(G, node_size=400, **option)
ax2 = fig.add_subplot(1,2,2)
nx.draw_networkx(G, node_size=400, **option)
plt.show()

在这里插入图片描述
参数fig.add_subplot(1,2,1)表示,将画布分割成1行2列,且坐标图位于从左到右,从上到下的第一个位置。

参数ax2 = fig.add_subplot(1,2,2)表示,将画布分割成1行2列,且坐标图位于第二个位置。

import numpy as np
import networkx as nx
import matplotlib.pyplot as plt

G = nx.Graph()
edgelist = [(0,1),(0,2),(0,3),(1,3)]
G.add_edges_from(edgelist)

fig = plt.figure()
# 
ax = fig.add_subplot(2,1,1)
option = {
    
    'font_family':'serif', 'font_size':'15', 'font_weight':'semibold'}
nx.draw_networkx(G, node_size=400, **option)
ax2 = fig.add_subplot(2,2,4)
nx.draw_networkx(G, node_size=400, **option)
plt.show()

在这里插入图片描述
参数fig.add_subplot(2,1,1)表示,将画布分割成2行1列,且坐标图位于从左到右,从上到下的第一个位置。
参数fig.add_subplot(2,2,4)表示,将画布分割成2行2列,且坐标图位于从左到右,从上到下的第四个位置。

需要注意的是,在绘制过程中需要算好比例,否则会造成图像重叠。

fig = plt.figure()
# 
ax = fig.add_subplot(1,1,1)
option = {
    
    'font_family':'serif', 'font_size':'15', 'font_weight':'semibold'}
nx.draw_networkx(G, node_size=400, **option)
ax2 = fig.add_subplot(2,2,4)
nx.draw_networkx(G, node_size=400, **option)
plt.show()

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/vincent_duan/article/details/121384003