MATLAB调用Origin绘图官方案例学习

news/2024/11/8 10:02:54/

MATLAB调用Origin

  • origin官方案例
    • 1. 绘图
    • 2 创建修改workbook

日常处理实验数据绘图用的都是origin,origin自带的模板和调色板比matlab好看太多(origin9以上,古老版本的origin配色也很丑)。平常都是把数据导出后转至origin处理,偶然看到origin存在COM接口,可以让matlab调用,于是试用了一下。

软件版本:MatlabR2019b,Origin2017(最近2020都出来了,origin还是新版好用)

origin官方案例

首先找到origin的自带案例文件,位于安装目录\Samples\COM Server and Client\MATLAB,一共有三个文件,CreatePlotInOrigin.m为在matlab中调用origin绘图,MATLABCallOrigin.m为创建workshop示例,.obj文件则是origin文件,可以自己打开看看~
在这里插入图片描述

1. 绘图

先来看看如何绘图,示例文件不包括数据文件的导入,是直接利用三角函数生成数据

function CreatePlotInOrigin()   originObj=actxserver('Origin.ApplicationSI'); %链接origin的COM接口invoke(originObj, 'Execute', 'doc -mc 1;');       invoke(originObj, 'IsModified', 'false');   invoke(originObj, 'Execute', 'syspath$=system.path.program$;');strPath='';strPath = invoke(originObj, 'LTStr', 'syspath$');invoke(originObj, 'Load', strcat(strPath, 'Samples\COM Server and Client\Matlab\CreatePlotInOrigin.OPJ'));mdata = [0.1:0.1:3; 10 * sin(0.1:0.1:3); 20 * cos(0.1:0.1:3)]; %创建数据mdata = mdata';  %将数据矩阵进行转置以适应worksheet列结构invoke(originObj, 'PutWorksheet', 'Data1', mdata);   %将数据传递至worksheetinvoke(originObj, 'Execute', 'page.active = 1; layer - a; page.active = 2; layer - a;'); %图片绘制,创建2个图层invoke(originObj, 'CopyPage', 'Graph1'); % 图片复制到剪切板 end

点击运行之后就可以去ppt等地黏贴图片了,此时也可打开origin模板文件看下,如下图所示。

在这里插入图片描述

2 创建修改workbook

这一个案例文件对如何创建和修改workbook进行了说明,也有很多图片修改的命令。

function MATLABCallOrigin(x) %x为数据originObj = actxserver('Origin.ApplicationSI');    invoke(originObj, 'Execute', 'doc -mc 1;');invoke(originObj, 'IsModified', 'false');  strBook = invoke(originObj, 'CreatePage', 2, '', 'Origin');  %创建图2  wks = invoke(originObj, 'FindWorksheet', strBook);   %寻找worksheet  invoke(wks, 'Name', 'MySheet');   %重命名worksheet%设置column invoke(wks, 'Cols', 3);   %设置三列cols = invoke(wks, 'Columns');colx = invoke(cols, 'Item', uint8(0)); coly = invoke(cols, 'Item', uint8(1));colerr = invoke(cols, 'Item', uint8(2));  invoke(colx, 'Type', 3);  % x columninvoke(coly, 'Type', 0);  % y columninvoke(colerr, 'Type', 2);  % y error,不同于1.1中第三列仍然为y轴,此处设置误差,相当于origin中的操作“列→设置为→Y误差图”invoke(wks, 'SetData', x, 0, 0);    % 创建绘图strGraph = invoke(originObj, 'CreatePage', 3, '', 'Origin');   gl = invoke(originObj, 'FindGraphLayer', strGraph);   dps = invoke(gl, 'DataPlots');   dr = invoke(originObj, 'NewDataRange');% 对图片进行修改invoke(dr, 'Add', 'X', wks, 0, 0, -1, 0);invoke(dr, 'Add', 'Y', wks, 0, 1, -1, 1);invoke(dr, 'Add', 'ED', wks, 0, 2, -1, 2);  invoke(dps, 'Add', dr, 202);  % 202 for symbol+line plot    invoke(gl, 'Execute', 'rescale;');   invoke(gl, 'Execute', 'xb.text$ = "Channel";');invoke(gl, 'Execute', 'yl.text$ = "Amplitude";');  invoke(gl, 'Execute', 'range ll = !;');invoke(gl, 'Execute', 'll.x2.showAxes=3;');invoke(gl, 'Execute', 'll.y2.showAxes=3;');    invoke(gl, 'Execute', 'll.x.from=0;');invoke(gl, 'Execute', 'll.x.to=3;'); invoke(gl, 'Execute', 'll.x.inc=10;');invoke(gl, 'Execute', 'label -r legend;');    invoke(originObj, 'Execute', 'save D:\MATLABCallOrigin.opj;');     %保存release(originObj);

这个单独运行是空的,需要先赋予数据,再运行此函数

x = [0.1:0.1:3; 10 * sin(0.1:0.1:3); 20 * cos(0.1:0.1:3)]';
MATLABCallOrigin(x);

运行结果如图
在这里插入图片描述
以上是官方案例的学习,后面倒腾一下创建自己风格的绘图模板文件,一次搞好脚本之后后面用起来应该就方便了。附上个人风格调整图,喜欢用Arial字体,颜色中掺点白色
在这里插入图片描述

另外附上可以参考学习的博客链接,包括如何导出图片等等
https://gaomf.cn/2016/01/28/Matlab调用Origin作图/
https://blog.csdn.net/LeonSUST/article/details/84861701?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-1&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-1

官方资料
https://www.originlab.com/doc/COM和https://www.originlab.com/doc/COM/Classes


http://www.ppmy.cn/news/748967.html

相关文章

【origin绘图】如何通过插入小图的方法放大局部图

用法: 图表中往往由于峰强屏蔽导致一些关键风不明显,则可以用插入局部图的方式来呈现。 具体操作: 方法1:找出需要放大区间的数据,使用人工插入图层的方式完成这项操作。 方法2:使用origin插件“Zoomed…

origin相关绘图操作

日常绘图时,会使用都origin,其是一款非常强大的制图工具,以下内容,会记录我使用过的功能,使用方法操作。 其强大的功能,我认为就是图层的使用,可以绘制多张图,利用图层管理将多张图…

origin绘图软件2021 2022-origin中文版下载安装-origin功能使用

Origin软件是一款强大的科学绘图工具,它可以用于创建各种类型的图表、数据分析以及统计图。与其他绘图软件相比,Origin具有许多独特功能,使其在科学和工程领域得到广泛应用。在本文中,我将介绍Origin软件的几项独特功能&#xff0…

origin绘图软件中文版下载和安装教程

origin的中文版分为官方中文版和汉化版。 汉化版就不说了,并不是真正的origin中文版, 说道这里,我先科普下两者的区别 中文版和汉化版通常都是指同一个软件的不同语言版本。中文版是该软件官方发布的中国大陆地区或全球中文语言版本&#…

在Origin绘图和表格中插入Latex公式

关于Origin与Latex结合应用 1 下载: origin latex app 下载 使用教程 2 origin中的Latex安装和使用 2.1 安装 博主的Origin版本为:OriginPro 2021 (64-bit) 9.8.0.200 按照第1部分下载app后,可以得到文件 LaTeX.opx ,安装非常简单&…

origin绘图软件中文版下载安装教程

官网链接:https://www.originlab.com/ 根据广大网友推荐,2021版本好用,bug较少 origin常见的汉化版:8.0 8.5 9.0 9.1 真正的origin中文版:2021 2019 2018 2022 中文版和汉化版通常都是指同一个软件的不同语言版本。 中…

绘图软件Origin新手使用教程

*写在前面:本文为便于博主自己学习进行的摘录整理,由于经过实际软件操作验证,故投稿原创,主要来源为知乎*绘图软件Origin使用教程 一、新手绘制新图(1)创建新图1.新建图2.文字输入3.绘制箭头4.新建图表选择…

Origin绘图 默认字体设置

设置Origin绘图的默认字体。 Tools >> Options >> Text Fonts >> Text Tool里面的Font设置。 示例: 第1步: Tools >> Options 第2步: Text Fonts >> Text Tool里面的Font设置