将Matlab绘图复制到Excel

我使用剪贴板复制和粘贴我的Matlab绘图通过actxserver优秀。 但是,我的身材的尺寸不复制到Excel。 如何更改为图的尺寸? 这是我的代码…

fig = figure('Position',[100 100 200 300]); print(fig,'-dmeta') Excel = actxserver('Excel.Application'); ExcelWorkbook=invoke(Excel.Workbooks,'Open','C:\...'); Sheets = Excel.ActiveWorkBook.Sheets.Item(1); Sheets.Range('A1').PasteSpecial; ExcelWorkbook.Save; Excel.Quit; 

用于打印的graphics属性(或用于复制到具有printfunction的剪贴板)不是'Position' ,而是'Paperposition'

从文档中 ,

Position – graphics可绘制区域的位置和大小,指定为[left bottom width height]forms的vector。 可绘制区域是窗口的内部区域,不包括标题栏,菜单栏和工具栏。

OuterPosition – graphics外边界的位置和大小,指定为vector[left bottom width height]

PaperPosition – 打印或保存时在页面上的图大小和位置,指定为[left bottom width height]forms的四元素vector

所以,加上类似的东西

 set(fig, 'Paperposition', [1 5 6 12]) %// adjust values as needed 

print(fig, '-dmeta')之前print(fig, '-dmeta')