Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/317.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
matplotlib/IPython笔记本创建空的PNG或PDF图像_Python_Matplotlib_Plot_Ipython Notebook - Fatal编程技术网

matplotlib/IPython笔记本创建空的PNG或PDF图像

matplotlib/IPython笔记本创建空的PNG或PDF图像,python,matplotlib,plot,ipython-notebook,Python,Matplotlib,Plot,Ipython Notebook,此代码使用matplotlib生成箱线图。IPython笔记本中正确显示了该图(见附图)。但是,savefig会创建一个空图像。我尝试了文件结尾.png和.pdf,但这两种情况都会发生。代码有什么问题 fig = matplotlib.pyplot.gcf() GCEMA = (0.26, 0.26, 0.30, 0.51, 0.55, 0.34) CEM = (0.26, 0.23, 0.30, 0.49, 0.35, 0.24) selSCAN = (0.19,

此代码使用matplotlib生成箱线图。IPython笔记本中正确显示了该图(见附图)。但是,
savefig
会创建一个空图像。我尝试了文件结尾
.png
.pdf
,但这两种情况都会发生。代码有什么问题

fig = matplotlib.pyplot.gcf()


GCEMA     = (0.26, 0.26, 0.30, 0.51, 0.55, 0.34)
CEM       = (0.26, 0.23, 0.30, 0.49, 0.35, 0.24)
selSCAN   = (0.19, 0.35, 0.28, 0.45, 0.41, 0.52)
selSCANAD = (0.26, 0.52, 0.37, 0.46, 0.46, 0.47)
N=6
pos = np.arange(N)
ax = plt.axes()

ax.bar(0.6*pos, GCEMA, width = 0.10, color='green', label='GCE-MA')
ax.bar(0.6*pos+0.1, CEM, 0.10, color='blue', label='CE-M')
ax.bar(0.6*pos+0.2, selSCAN, 0.10, color='red', label='selSCAN-ND')
ax.bar(0.6*pos+0.3, selSCANAD, 0.10, color='yellow', label='selSCAN-AD')
ylabel("quality [$\phi$]", fontsize=14)
fig.set_size_inches(5,4)
xticks(rotation=15)
xticks([0.2,0.8,1.4,2,2.6,3.2],['PGP','CAIDA','coPapersDBLP','soc-LiveJournal','uk-2002','eu-2005'])
legend(loc=4, fontsize=10)
show()
savefig("cond.png")

您可能需要在
show
之前使用
savefig
您可能需要在
show
之前使用
savefig

谢谢,简单的解决方案;在python控制台中,之前显示不会产生问题-在ipython中,它不会产生问题!顺便说一句,如果一个单元格以某个绘图结束,而下一个单元格执行
savefig
,也会出现问题。要使
savefig
工作,应在与绘图相同的单元格中执行。这可能会在IPython的一个repr*(
\u repr\u png
?)中出现一个隐式的
show
),因此上面的答案也适用;在python控制台中,之前显示不会产生问题-在ipython中,它不会产生问题!顺便说一句,如果一个单元格以某个绘图结束,而下一个单元格执行
savefig
,也会出现问题。要使
savefig
工作,应在与绘图相同的单元格中执行。这可能会在IPython的一个repr*(
\u repr\u png
?)中出现一个隐式的
show
),因此上面的答案也适用。