目录
1 概述
2 Python生成图片到visio的矢量图
2.1 python 保存为svg
2.2 svg 转emf
2.3 Visio编辑和修剪矢量波形图
3 Matlab生成图片到visio的矢量图
4 Simulink仿真波形到visio的矢量图
5 Python及Matlab代码实现
提到流程图软件,大部分人想到的就是 Visio。确实,Visio 用的人多,和 office 集成度也很高。
但是Visio 不属于 Office 套件,需要单独购买;很多 Mac、Linux 用户无法使用。
利用Visio快速绘制流程图
手动绘制:选择流程图模板,利用形状快速绘制,连线自动生成
自动绘制:在Excel中整理流程的步骤,再通过Visio数据可视化模板导入Excel,自动生成可刷新的流程图
Office的每个组件都有其优势和劣势,如果我们能善于利用各个组件的优势,效率一定会有大幅度的提升!
本科或者研究生在做课题或者写论文的时候,会使用到Python编程、Matlab编程或者使用Simulink进行仿真,当我们使用Python、Matlab或者Simulink进行仿真的时候,需要将仿真的波形进行进一步的编辑作为最后的论文使用的时候,我们需要将仿真的波形图作为矢量图输出,并使用微软的Visio软件进行编辑之后,再粘贴到Word中作为论文的最终贴图。那么我们该如何进行操作呢?
我们可能有两种情况对仿真波形进行输出编辑,第一种情况是Matlab编程生成的Figure图输出,第二种情况是Simulink仿真Scope示波器的波形图输出。
以电动车博弈生成图为例:
#=======可视化============
index = np.arange(1, 26)
rects1 = plt.bar(index, e, 0.5, color='#0072BC')
rects2 = plt.bar(index + 0.5, E, 0.5, color='#ED1C24')
plt.axis([0, 26, 0, 50])
plt.title('出租车的预期和实际数量')
plt.ylabel('E and e')
# plt.grid(ls=":",c='b',)#打开坐标网格
plt.xlabel('换电站')
plt.legend(['e', 'E'])
2.1 python 保存为svg
#====程序后面加上,如下所示:================
index = np.arange(1, 26)
rects1 = plt.bar(index, e, 0.5, color='#0072BC')
rects2 = plt.bar(index + 0.5, E, 0.5, color='#ED1C24')
plt.axis([0, 26, 0, 50])
plt.title('出租车的预期和实际数量')
plt.ylabel('E and e')
# plt.grid(ls=":",c='b',)#打开坐标网格
plt.xlabel('换电站')
plt.legend(['e', 'E'])
plt.savefig('1.svg', dpi=300, bbox_inches="tight")
## 保存图为svg格式,即矢量图格式
# 保存文件,dpi指定保存文件的分辨率
# bbox_inches="tight" 可以保存图上所有的信息,不会出现横纵坐标轴的描述存掉了的情况
plt.show()
# 记住,如果你要show()的话,一定要先savefig,再show。如果你先show了,存出来的就是一张白纸。
2.2 svg 转emf
svg 在visio里打开有的线乱了,这里使用emf打开
用这个超级棒的网址: 在线svg 转emf
2.3 Visio编辑和修剪矢量波形图
当我们保存完python输出的*.emf文件之后,我们如何进一步对图片进行处理呢?
首先我们打开Visio,创建一个空白绘图,点击插入栏下的图片,插入Matlab或Simulink中保存的.emf格式的图片,如下
图
所示。
图 插入保存的.emf格式的图片
插入需要编辑的图片之后,全选图片右键选择组合下的取消组合,如下图
所示。
之后可以根据自己需求进行添加横纵坐标标签,然后粘贴到Word文档中即可。
如果需要将波形进行裁剪,在Visio的文件→选项→高级中找到常规下的开发人员模式运行,将复选框进行勾选,点击确定,如下图
所示。
图 打开以开发人员模式运行
选择了开发人员模式运行之后,就会在Visio的菜单栏中显示开发工具
选项。选择开发工具栏下的线条,用线条绘制需要分割的区域,之后选择需要分割的波形和线条,点击操作
选项下修剪
就可以对矢量波形图进行分割操作,如下图
所示。
最后根据自己的需求,将矢量图进行进一步的修饰编辑,得到想要的Visio图形,最后复制粘贴到Word中作为最后的论文的波形图即可。
当我们使用Matlab进行编程得到的波形,并且想要存为图片时,以MATLAB R2018a为例,新建一个Script文件,输入以下代码,得到出租车预测与实际数量。
如果我们不需要后续的编辑,可以直接在菜单栏的文件选项下点击导出设置,如
图
所示。然后选择渲染,导出。
后面导入visio的步骤和本文2.3 Visio编辑和修剪矢量波形图一样
首先打开Simulilnk的仿真波形,对波形进行调整至需要作为输出的波形图,由于Simulink默认的图背景是黑色的,并且有很多栅格,如图
所示。
图 需要进行编辑的Scope波形图
为了方便后续的编辑操作,我们需要将这些网格先取消显示。我们点击Scope的⚙图标,将Display下的Show grid取消选择,如下
图
所示。
图 取消显示网格
然后将Scope的背景设置成白色,波形的颜色可以设置为深色的。点击View下的Style进行背景颜色的设置,如下图
图
所示。
图 设置背景和波形的线宽
点击File下的Print to figure,将Scope的波形打印成Figure,如下
图
所示。
图 将Scope的波形打印成Figure
打印成Figure后,点击Figure中
File
下的Export Setup…
,如下图
所示。
图 将Figure进行导出设置
同理,在之后的弹窗中选择渲染,颜色空间选择RGB颜色,勾选自定义渲染器,选择矢量输出,之后点击应用于图窗,最后选择导出即可。导出时对文件进行命名,如果需要用Visio进行后续编辑,保存类型选择*.emf格式进行保存。
后面导入visio的步骤和本文2.3 Visio编辑和修剪矢量波形图一样
如果对本文代码和运行结果感兴趣:点这里查看:正在为您运送作品详情
以视觉和听觉为例:视觉大约占去人类信息感知量的70%—80%,然而它只是生物感光系统的一种机能表现,其自然演化渊源与低等生物最简单的光合能量代谢方式有关。因此,他只是某一进化环境所限定的照度内对400—700纳米之间的光波可感,也就是说,凡不在这个范围内发光和反光的物体对视觉来说,均可属于不存在,或者,凡不以发光和反光呈现其属性的物体对视觉来说均是不存在的。