如何在iPython/Jupyter笔记本中调整SVG图形的大小/重新缩放?

Cla*_*MBE 4 python svg keras jupyter-notebook

我有一个大型的SVG(.svg图形)对象,可以在iPython/Jupyter Notebook中显示.事实上,我有一个用Keras创建的大型神经网络模型图形来显示.

from IPython.display import SVG
from keras.utils.vis_utils import model_to_dot

SVG(model_to_dot(model,show_shapes=True).create(prog='dot', format='svg'))
Run Code Online (Sandbox Code Playgroud)

所以,我想调整SVG图形的大小/重新缩放/缩小以适应我的Notebook页面(特别是水平,因为页面宽度有限).

小智 10

另一种选择是使用“dpi”(每英寸点数)属性。有点 hacky 但这让我可以缩小我的 SVG。 Tensorflow:model_to_doc

    from IPython.display import SVG
    from keras.utils import model_to_dot

    SVG(model_to_dot(model, show_shapes= True, show_layer_names=True, dpi=65).create(prog='dot', format='svg'))
Run Code Online (Sandbox Code Playgroud)


Cla*_*MBE 6

由于这是网页呈现的问题,我选择使用CSS.

在我的SVG创建单元格上方的代码单元格中,我插入了带有CSS规则的IPython HTML代码,以将宽度和高度缩小50%.我添加了关键字!important以优先使用此CSS规则.

from IPython.display import HTML
style = "<style>svg{width:50% !important;height:50% !important;}</style>"
HTML(style)
Run Code Online (Sandbox Code Playgroud)