matlab图片矢量化,matlab图形矢量化解决方案
大致思路:matlab中生成矢量格式文件-導入Visio中-編輯-導出合適格式-在其他軟件中使用
準備工具
Matlab 2014b或更高版本
Visio 2007或更高版本
我查看過,Matlab能夠輸出的矢量化文件大概有*.svg、*.eps、*.pdf三種,但是這三種中,Visio能夠打開的只有*.svg。之所以選擇Visio,是因為畫示意圖來說,Visio基本算得上是比較好的選擇了。
技術基礎
簡單的Matlab編程能力(目測你一天就能學會的Matlab知識,差不多就夠用)
理論基礎
理論基礎就直接參看周建鋒老師的博文好了:http://blog.sciencenet.cn/blog-3854-760545.html
繪制圖像
下面以一個簡單的圖像示例來表示:
clc;clear ;close all
x = 0 : 0.05 : 10;
y1 = sin(x);
y2 = cos(x);
plot(x, y1, 'LineWidth',2)
hold on
plot(x, y2, 'LineWidth', 2)
legend('Line1','Line2','Location','best') % 加圖例,并將之放在最好的Location
axis auto
set(gca,'FontSize',14,'LineWidth', 1,'FontName', 'Times New Roman')
set(gcf,'Position',[400 100 800 600]);
if ~exist('./example.svg','file') % 判斷文件是否存在
saveas(gcf,'./example.svg')
end
得到的圖像大致如下:
檢查matlab當前的工作路徑下,已經有了一個example.svg的文件。將這個文件在Visio中打開。
更簡單一點的打開方式是:新建Visio文件,直接講example.svg拖入Visio中。
我們知道,*.svg是網絡通用的矢量圖形格式,很多軟件中都能直接打開的,最明顯的軟件當然是各種瀏覽器了,比如IE。
在上面的代碼中,exist('./example.svg','file')是判斷matlab的當前目錄下文件example.svg是否存在,如果存在就不再生成example.svg 了,避免多次重復生成。但是如果你的圖形需要更新,記得刪除之前生成的版本。
在Matlab中,另外一種生成*.svg格式的方式是直接在圖形窗口->file->save as...->save as type欄選擇svg格式即可保存為*.svg格式的文件。當然,你需要自己命名一個文件名。
Visio中打開
在Visio中打開之后,我們大致會得到這樣的圖形,可以看到,很清晰,矢量化的。
同時,也很明顯,它是高度組合化的。
所以,我們需要將之解組合。
接下來按照步驟:
1. 選擇圖形(點擊圖形or按ctrl+A也行)
2. 點擊home下的group
3. 點擊解組合(ungroup)
4. 再次重復動作2和3,兩次。也就是說說總共需要解組合三次。
下面兩張圖作為指引。
group功能
解組合功能
在Visio中的后處理
圖形在Visio中打開之后便可以生成為其他的圖形格式或者直接將visio文件插入word中即可。
刪除白色底紋
解組合之后,圖形下層會有一些白色底矩形,可以將之刪除,使圖形透明。如下圖所示,左下角和右上角的兩塊矩形分別是原來圖形的曲線畫布區域和整個圖形畫布區域的底紋圖形填充方塊。
查看圖形元素
當我們選擇自由曲線工具之后,在點擊圖形中的Line2曲線,可以看到,實際上Line2曲線是由自由曲線通過控制很多的節點來實現cos函數圖形的繪制的。這也可以讓我們反向思考matlab底層的繪制函數時怎么實現曲線的繪制的。
修改元素
在Visio中,我們可以選擇任何的元素來進行修改,也可以在上面增加或刪除任何的元素。這給我們修飾圖形方面有了巨大的空間(當然不能進行數據修改以此來發文章)。
總結
以上是生活随笔為你收集整理的matlab图片矢量化,matlab图形矢量化解决方案的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: hive 集成oracle,hive集成
- 下一篇: oracle+sid+未清除,管理信息化