python将一维数组导入到excel表格,并使用Origin绘图

December 17, 2023
测试
测试
测试
测试
5 分钟阅读

大家好,又见面了,我是你们的朋友全栈君。

0. 背景及意义

声明:本文为当年很爱的一位女孩所写!

  • 在我们做课设、实验或者毕业设计时,撰写报告或论文,老师会要求使用专业的绘图工具出图,因此本文编写了将一维数组写入到excel表格的代码,使用专业绘图工具只需要导入表格即可绘图。
  • 数组示例:a = [1, 2, 3, 4, 5]
  • 此代码只是示例,请发挥想象,可拓展到多维数据(列表)

1. 安装必要的python库

按下win+R,输入cmd打开控制面板,分别输入以下命令安装库:

pip install xlrd
pip install xlwt
pip install xlutils

如果嫌弃下载速度慢,请移步我的另一篇文章:pip下载加速

2. 示例代码

# coding=UTF-8
import xlrd
import xlwt
import numpy as np
from xlutils.copy import copy

excel1 = '表格1.xls'
excel2 = '表格2.xls'
excel3 = '表格3.xls'
excel4 = '表格4.xls'

# 想写入哪个表格后面就跟哪个表格
excel_name = 'excel/' + excel1

# sheet名称
sheet_name = '车雯心小姐姐的实验数据'

# 表头
title = ['Sequence', 'Temp', 'Vth', 'Vgs']

# 示例数据
data0 = list(range(0,100))

data1 = 1 * np.random.rand(100)
# data1 = 1 * np.random.randn(100)
# data1 = 1 * np.random.randint(100)
# data1 = 1 * np.random.permutation(100)

data2 = 2 * data1

data3 = 3 * data1

# 新建表格
def excel_int(path, sheet_name):
    workbook = xlwt.Workbook()  # 新建一个工作簿
    workbook.add_sheet(sheet_name)  # 在工作簿中新建一个表格
    workbook.save(path)  # 保存工作簿
    print("新建表格成功,表格名称为:",path)

# 写入表头
def excel_write_title(path, titels):
    workbook = xlrd.open_workbook(path)  # 打开工作簿
    new_workbook = copy(workbook)  # 将xlrd对象拷贝转化为xlwt对象
    new_worksheet = new_workbook.get_sheet(0)  # 获取转化后工作簿中的第一个表格
    for j in range(0, len(titels)):
        new_worksheet.write(0, j, str(titels[j]))  # 表格中写入数据(对应的行)
    new_workbook.save(path)  # 保存工作簿

# 向表格按列写入一维数组(列表)
def excel_write_array(path, value, column):
    workbook = xlrd.open_workbook(path)  # 打开工作簿
    new_workbook = copy(workbook)  # 将xlrd对象拷贝转化为xlwt对象
    new_worksheet = new_workbook.get_sheet(0)  # 获取转化后工作簿中的第一个表格
    for i in range(0, len(value)):
        # 向表格中写入数据(对应的列),初始位置加1(因为有表头)
        new_worksheet.write(i+1, column, float(value[i]))
    new_workbook.save(path)  # 保存工作簿


# 新建表格
excel_int(excel_name, sheet_name)

# 写入表头
excel_write_title(excel_name, title)

# 写入四列数据
excel_write_array(excel_name, data0, 0)
excel_write_array(excel_name, data1, 1)
excel_write_array(excel_name, data2, 2)
excel_write_array(excel_name, data3, 3)

3. 代码如何运行

请参照下图进行文件夹分配,在代码目录下新建一个excel文件夹,即可运行:

在这里插入图片描述
在这里插入图片描述

4. 将数据导入到origin绘图

在这里插入图片描述
在这里插入图片描述

导入excel数据后选中需要绘图的列,选择你想绘制的图表形式即可~

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/138880.html原文链接:https://javaforall.cn

继续阅读

更多来自我们博客的帖子

如何安装 BuddyPress
由 测试 December 17, 2023
经过差不多一年的开发,BuddyPress 这个基于 WordPress Mu 的 SNS 插件正式版终于发布了。BuddyPress...
阅读更多
Filter如何工作
由 测试 December 17, 2023
在 web.xml...
阅读更多
如何理解CGAffineTransform
由 测试 December 17, 2023
CGAffineTransform A structure for holding an affine transformation matrix. ...
阅读更多