You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将FMU与系统示意图PNG文件打包并在Jupyter Notebook中访问显示?

问题解答:FMU与PNG打包及Jupyter Notebook中显示PNG

一、FMU与PNG打包的可行性

完全可行,有两种常用实现方案:

  • 方案1:同目录压缩打包:将编译好的FMU文件和PNG图片放在同一文件夹,直接打包成ZIP/RAR等压缩包即可。这种方式简单直观,不会修改FMU本身的结构。
  • 方案2:将PNG嵌入FMU包内:FMU本质是符合特定规范的ZIP压缩文件,你可以直接用压缩软件打开FMU,将PNG图片添加到包内的非核心目录(比如新建一个assets文件夹),只要不覆盖FMU原有必要文件(如modelDescription.xml、二进制仿真文件等),就不会影响FMU的正常仿真功能。

二、在Jupyter Notebook中访问并显示PNG的方法

根据打包方式不同,操作略有区别:

情况1:PNG与FMU在同一目录(或解压后同目录)

直接使用Python的IPython.display或matplotlib模块读取显示:

# 方法1:用IPython.display快速显示
from IPython.display import Image
Image(filename='系统展示图.png')

# 方法2:用matplotlib自定义显示样式
import matplotlib.pyplot as plt
import matplotlib.image as mpimg

img = mpimg.imread('系统展示图.png')
plt.imshow(img)
plt.axis('off')  # 隐藏坐标轴
plt.show()

情况2:PNG嵌入FMU包内

通过zipfile模块直接读取FMU包内的PNG文件,无需完整解压:

from IPython.display import Image
import zipfile
import io

# 打开FMU压缩包
with zipfile.ZipFile('你的模型.fmu', 'r') as fmu_zip:
    # 读取包内指定路径的PNG文件(示例路径为assets/系统展示图.png)
    with fmu_zip.open('assets/系统展示图.png') as png_file:
        img_data = io.BytesIO(png_file.read())
        display(Image(img_data))

内容的提问来源于stack exchange,提问作者janpeter

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.11 18:12:32