如何使用临时文件将类型 IPython.core.display.Image 转换为 base64 字符串?
How can i convert type IPython.core.display.Image to base64 string using tempfile?
我正在尝试从随机森林分类器中可视化决策树。
但是,正在生成的图像类型是 IPython.core.display.Image
我希望使用临时文件库将其转换为 base64 字符串
import tempfile
import base64
from IPython.display import Image
from sklearn import tree
import pydotplus
dot_data = tree.export_graphviz(model.best_estimator_[0], out_file=None,
feature_names=X_train.columns,
class_names=unique_target)
graph = pydotplus.graph_from_dot_data(dot_data)
# Show graph
image= Image(graph.create_png())
with tempfile.TemporaryFile(suffix=".png") as tmpfile:
fig = image.get_figure()
"AttributeError: 'Image' object has no attribute 'get_figure'"
type(image)
Out[32]: IPython.core.display.Image
我得到的错误是:
"AttributeError: 'Image' object has no attribute 'get_figure'"
我有点迷茫
在不显式保存文件的情况下将其转换为 base64。
成功了。我和一个朋友试了几个小时。
import base64
from IPython.display import Image
from sklearn import tree
import pydotplus
dot_data = tree.export_graphviz(model.best_estimator_[0], out_file=None,
feature_names=X_train.columns,
class_names=unique_target)
graph = pydotplus.graph_from_dot_data(dot_data)
image= Image(graph.create_png())
Encoded_Image=str(base64.b64encode(image.data)) ##That's the line you add before you save it as an Encoded String
不需要添加临时文件部分的代码。
我正在尝试从随机森林分类器中可视化决策树。
但是,正在生成的图像类型是 IPython.core.display.Image
我希望使用临时文件库将其转换为 base64 字符串
import tempfile
import base64
from IPython.display import Image
from sklearn import tree
import pydotplus
dot_data = tree.export_graphviz(model.best_estimator_[0], out_file=None,
feature_names=X_train.columns,
class_names=unique_target)
graph = pydotplus.graph_from_dot_data(dot_data)
# Show graph
image= Image(graph.create_png())
with tempfile.TemporaryFile(suffix=".png") as tmpfile:
fig = image.get_figure()
"AttributeError: 'Image' object has no attribute 'get_figure'"
type(image)
Out[32]: IPython.core.display.Image
我得到的错误是:
"AttributeError: 'Image' object has no attribute 'get_figure'"
我有点迷茫 在不显式保存文件的情况下将其转换为 base64。
成功了。我和一个朋友试了几个小时。
import base64
from IPython.display import Image
from sklearn import tree
import pydotplus
dot_data = tree.export_graphviz(model.best_estimator_[0], out_file=None,
feature_names=X_train.columns,
class_names=unique_target)
graph = pydotplus.graph_from_dot_data(dot_data)
image= Image(graph.create_png())
Encoded_Image=str(base64.b64encode(image.data)) ##That's the line you add before you save it as an Encoded String
不需要添加临时文件部分的代码。