终于弄懂了origin批量制图

1. 不会批量制图时:累,格式还弄不好

上次组会时2020-01-03,组会都要开始了,我还有一个类型的图没有做出来。
一共也就7个类型的图(1个类型4张图),一张一张的做,然后把图出出来,一共需要28次。我深刻的记得,我从前一天晚上开始作图,做到23:30没有做完,第二天6:30起来作图,到开组会还是没做完。what a ****!!


2. origin批量制图

在这里插入图片描述

2.1 批量制图的步骤:

  1. 先做好一个模板。有计算的,选择Recalculate mode: auto
  2. 使用模板。打开后,选择File–>Save Project Without Data;
  3. 把另一个类型的数据复制到sheet1,所有的结果都做好了。
    在这里插入图片描述

2.2 小结

  1. 把4种方法的图都做好;
  2. 再用Merge Graph Windows选项来拼图;
  3. 最后,出图或直接复制图形到PPT中即可。
### 如何在 Origin 中实现批量 Origin 是一款功能强大的数据分析和绘工具,支持通过脚本语言 LabTalk 和 Python 实现自动化操作。以下是关于如何利用这些特性来完成批量的方法。 #### 使用 LabTalk 脚本进行批量 LabTalk 是 Origin 的内置脚本语言,可以用来控制几乎所有的 Origin 功能。要实现批量,可以通过编写循环读取多个文件并自动创建形的方式完成。以下是一个简单的例子: ```labtalk // 定义数据路径 string path$ = "C:\Data\"; // 获取目录中的所有 CSV 文件 string fileFilter$ = "*.csv"; string fileList$; _getfilenames(path$, fileFilter$, fileList$); // 遍历文件列表并绘制每张 loop(ii, 1, fileList$.nTokens(";")) { string fileName$ = fileList$.gettok(ii, ";"); newbook; // 创建新工作簿 impASC %(path$ + fileName$); // 导入 ASCII 数据 // 绘制折线 (可以根据需求更改表类型) plotxy iy:=[Book1]Sheet1!(A,B) plot:=200; } ``` 上述代码实现了从指定路径下导入所有 `.csv` 文件,并为每个文件生成一张折线的功能[^1]。 #### 利用 Python 进行更复杂的批量化操作 如果需要更加复杂或者自定义程度更高的解决方案,则可以选择使用 Python 来调用 Origin 提供的 COM 接口。这种方法允许开发者充分利用 Python 生态系统的强大能力来进行高级编程。 下面展示了一个基本的例子,说明如何借助 Python 控制 Origin 自动生成多幅表: ```python import os from win32com.client import Dispatch # 初始化 Origin 应用程序对象 app = Dispatch("Origin.ApplicationSI") # 设置项目路径以及目标文件夹位置 data_dir = r"C:\Path\To\Data" output_dir = r"C:\Path\To\Output" for filename in os.listdir(data_dir): if not filename.endswith(".txt"): continue full_path = os.path.join(data_dir, filename) # 新建一个 workbook 并加载数据 wbk = app.NewWorkbook() wks = wbk.ActiveLayer wksCols = wks.Columns nRowsImported = wks.ImportASCII(full_path, 0) # 添加一些简单预处理逻辑... # 插入新的 graph window 并设置好源数据范围 grfWin = app.CreateGraphTemplate("Line", "") pltLyr = grfWin.Layers(0) pltLyr.AddPlot(wks, 1, 2) export_name = os.path.splitext(filename)[0]+".png" output_file = os.path.join(output_dir, export_name) grfWin.ExportGraph(output_file,"PNG","",640,480,0,100,False) ``` 这段代码展示了如何遍历某个文件夹内的文本文件,逐一将其转换成像保存到另一文件夹的过程。 #### 注意事项 - **性能优化**:对于大规模的数据集或高分辨率片导场景,应考虑分批次运行任务以减少内存占用。 - **错误捕获机制**:实际应用过程中可能遇到各种异常情况(比如缺失列、损坏文档等),因此建议加入适当的 try-except 结构保护整个流程正常运转。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值