当前位置: 首页 > news >正文

【Origin+Python】使用External Python批量出图代码参考

目录

  • 基本介绍
  • 环境配置
  • 官方代码示例
  • 基础代码详解
  • 我的代码效果视频
  • 进阶代码及去水印

基本介绍

在这里插入图片描述

origin2021后可以使用python实现批量绘图,一共有两种方式:一种是嵌入式Python,一种是外部Python访问Origin。详细介绍可以自己去查看,打开origin->帮助->编程->python,就可以打开网页 link查看。
这里主要介绍比较少人提及的外部Python访问Origin方式,内部太麻烦了,对于习惯使用pycharm的我来说。

环境配置

还是熟悉的Anaconda Prompt,然后配置需要使用到的环境。首先先创建一个origin环境,然后激活环境后进行pip安装。这里conda install会报错的
创建环境见我其他配置教程: 【框架安装】win7 配置安装tensorflow和keras教程
在这里插入图片描述

pip install originpro

然后就打开pycharm创建新项目,设置环境。见我其他配置教程: 【框架安装】win7 配置安装tensorflow和keras教程

官方代码示例

代码示例:https://www.originlab.com/doc/en/ExternalPython/External-Python-Code-Samples
更多代码示例:https://github.com/originlab/Python-Samples
官方函数指南:https://docs.originlab.com/originpro/annotated.html

基础代码详解

这里部分代码有删减,不可以直接运行!!!可以参考下面步骤流程写自己的代码!!!

part1 初始化

import os
import originpro as op
import numpy as np
import pandas as pd
# Very useful, especially during development, when you are liable to have a few uncaught exceptions.
# Ensures that the Origin instance gets shut down properly.
# Note: only applicable to external Python.
# 官网推荐加的,不加白不加
import sys
def origin_shutdown_exception_hook(exctype, value, traceback):'''Ensures Origin gets shut down if an uncaught exception'''op.exit()sys.__excepthook__(exctype, value, traceback)
if op and op.oext:sys.excepthook = origin_shutdown_exception_hook

part2 打开origin界面(也可以不打开的,但是打开可控一点)

# Set Origin instance visibility.
# Important for only external Python.
# Should not be used with embedded Python.
# 这个命令可以打开一个origin界面
if op.oext:op.set_show(True)

part3 读取数据并进行数据处理

# 可以实现设置一个origin模板,这样可以减轻工作量
# 这里先设置好模板读取路径template_path,以及图片保存路径save_img_path
# 可以看这个教程:https://blog.originlab.com/origin-graph-templates-for-python-developers
working_folder = os.path.dirname(os.path.realpath(__file__))
template_path = os.path.join(working_folder,'test111.otpu')
save_img_path = working_folder
# 可以使用pandas 和numpy 处理数据
data = pd.read_csv(csv_path, header=None)
data = np.array(data).flatten()

part4 新建表格,并将数据输入到表格

# Simple syntax to create a new workbook with one sheet
wks = op.new_sheet('w','test')
# Insert list data into columns 1
# 这里0指的是第一列,1指的是第二列,data就是要输入进去的列向量np格式数据,列名设置为???。这里输入两列相同的数据
# 注意这个列名会显示到图上面的
wks.from_list(0, data, lname='???')
wks.from_list(1, data, lname='???')

part5 绘图

# Create a new graph object based on a graph template.
# Provide path to the template. We'll use a built-in
gr = op.new_graph(template=template_path)# Add plots with data from worksheet to layer 1 and layer 2
# and then rescale.
# p1 就是绘制的第一条曲线,
p1 = gr[0].add_plot(wks, coly='B', colx='A')
# X is col A, Y is col B.
p1.color = '#335eff' # 设置曲线颜色
# 可以到这个网站找合适的配色:https://eng.m.fontke.com/tool/rgb/
# p2 就是绘制的第二条曲线
p2 = gr[0].add_plot(wks, 'C', 'A')
# X is col A, Y is col C.
p2.color = '#ff5833'

part6 保存图片

# 保存图片
f=gr.save_fig(os.path.join(save_img_path,'my_py_test.png'))
# 打开刚刚保存的图片
if len(f):os.startfile(f)

part7 退出origin

# Exit running instance of Origin.
if op.oext:op.exit()

我的代码效果视频

在这里插入图片描述

进阶代码及去水印

见【Origin+Python】使用External Python批量出图代码参考2

http://www.lryc.cn/news/339792.html

相关文章:

  • YOLOv8最新改进系列:融合DySample超轻量动态上采样算子,低延迟、高性能,目前最新上采样方法!!!遥遥领先!
  • ChatGPT基础(二) ChatGPT的使用和调优
  • 麒麟 V10 离线 安装 k8s 和kuboard
  • PlayerSettings.WebGL.emscriptenArgs设置无效的问题
  • 项目管理工具——使用甘特图制定项目计划的详细步骤
  • python读取文件数据写入到数据库中,并反向从数据库读取保存到本地
  • 社交媒体数据恢复:Viber
  • 蓝桥杯赛事介绍
  • TypeScript系列之-深度理解基本类型画图讲解
  • Debian
  • 怎么使用JMeter进行性能测试?
  • MySQL:锁的分类
  • 基于springboot实现房屋租赁管理系统设计项目【项目源码+论文说明】
  • 揭秘Redis底层:一窥数据结构的奥秘与魅力
  • 【网站项目】智能停车场管理系统小程序
  • 芒果YOLOv5改进94:检测头篇DynamicHead为目标检测统一检测头:即插即用|DynamicHead检测头,尺度感知、空间感知、任务感知
  • 获奖名单出炉,OurBMC开源大赛总决赛圆满落幕
  • Qt配置外部库(Windows平台)
  • (最新)华为 2024 届实习招聘-硬件通⽤/单板开发——第十一套和十二套
  • js纯前端实现语音播报,朗读功能(2024-04-15)
  • PostgreSQL数据库基础--简易版
  • 前端解析URL的两种方式
  • Linux的学习之路:6、Linux编译器-gcc/g++使用
  • 分享2024 golang学习路线
  • 【Linux】进程间通信——system V版本 共享内存
  • 【TEE论文】IceClave: A Trusted Execution Environment for In-Storage Computing
  • 【攻防世界】bug
  • 详解UART通信协议以及FPGA实现
  • 【算法】删除链表中重复元素
  • mysql防坑指南