我第一次尝试mpld3,并且想将图另存为json文件,因此我尝试了以下操作
f=open('my_first_graph.json', 'w+')
plt.hist(population_ages, bins, histtype='bar', rwidth=0.8)
fig = plt.Figure()
fig.show()
plt.title("Populations")
plt.legend()
mpld3.show()
mpld3.save_json(fig, fileobj=f)f= open('my_first_graph.json', 'w+')
plt.hist(population_ages, bins, histtype='bar', rwidth=0.8)
fig = plt.Figure()
fig.show()
plt.title("Populations")
plt.legend()
mpld3.show()
mpld3.save_json(fig, fileobj=f)
根据文档,save_json
方法采用两个参数分别是文件对象和
matplotlib Figure instance
The figure to write to file.
所以我成功添加了文件对象,并创建了一个json文件,问题是它为空。
如何将我的图制作成图形并将其作为参数传递给方法,以成功将其解析为json?
答案 0 :(得分:1)
您需要在代码中将fig = plt.Figure()
更改为fig = plt.gcf()
。
plt.Figure
正在创建一个新的空白图形,然后将其保存。这就是为什么您看到一个空的数字。
您想要做的是获取使用plt
创建的当前图形的句柄,因此您应该使用gcf
(获取当前图形)。