首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不同平台的Networkx图的大小各不相同

不同平台的Networkx图的大小各不相同
EN

Stack Overflow用户
提问于 2017-11-20 00:43:36
回答 1查看 470关注 0票数 2

我有一个绘制图形的简短代码:

代码语言:javascript
复制
plt.figure(figsize=(15,15),dpi=300)
ax = plt.subplot(111)
nd = nx.draw_networkx_nodes(G, pos, node_color=node_cols, linewidths=1, node_size=node_sizes)
nd.set_edgecolor('w') #<- set the edgecolor to red on the node markers
nx.draw_networkx_edges(G, pos, edge_color=edge_cols,width=edge_sizes)
nx.draw_networkx_labels(G, pos, labels, font_size=fs, font_weight='bold')
plt.tick_params(
    axis='both',          # changes apply to both axes
    which='both',      # both major and minor ticks are affected
    bottom='off',      # ticks along the bottom edge are off
    top='off',         # ticks along the top edge are off
    labelbottom='off', # labels along the bottom edge are off
    left='off',
    labelleft='off')
#plt.show()
plt.savefig('foo.pdf')

在我的苹果iPython笔记本上运行时,和在微软的pycharm上运行时,尺寸是不同的。有没有办法解决这个问题?如何在知情的情况下指定edge_sizes和node_sizes?谢谢!

EN

回答 1

Stack Overflow用户

发布于 2017-11-20 02:42:36

jupyter笔记本中matplotlib图形的默认图形大小和dpi不同于通常的脚本。

你可以通过

代码语言:javascript
复制
import matplotlib.pyplot as plt
print(plt.rcParams["figure.figsize"])
print(plt.rcParams["figure.dpi"])

它应该为jupyter笔记本打印[6.0, 4.0] 72.0,为脚本打印[6.4, 4.8] 100.0

为了设置这些参数,可以使用

代码语言:javascript
复制
plt.rcParams["figure.figsize"] = 6,4
plt.rcParams["figure.dpi"] = 100

将它们设置为所有输出,或者

代码语言:javascript
复制
plt.figure(figsize=(6,4), dpi=100) 

对于一个人来说。这样,您可以确保脚本和notebook的输出是相同的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47379297

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档