python读取.xls文件,绘制钻头外径磨损图

通过xlrd模块读取.xls文件,数据如下,总计162行16列:

读取与作图如下:

python 复制代码
from xlrd import open_workbook
import matplotlib
import matplotlib.pyplot as plt
# 设置字体为微软雅黑,解决中文显示问题

matplotlib.rc("font", family='Microsoft YaHei')

datafilepath='C:\\Users\\yh\\Documents\\python file\\F1-18.xlsx'
# 打开 excel 文件
xlsx = open_workbook(datafilepath) 
# 通过索引获取第 1 个表格中的内容,一个 excel 文件可能会包含多个表格
sheet = xlsx.sheet_by_index(1) 

# 通过索引获取表格中第 1 行的内容
#row1 = sheet.row_values(0) 

data_2k=[]
data_4k=[]
data_6k=[]


for i in range(18):
    temp_2k=[]
    temp_4k=[]
    temp_6k=[]
    for j in range(16):
        temp_2k.append((sheet.row_values(9*i)[j] +sheet.row_values(9*i+1)[j]+sheet.row_values(9*i+2)[j])/3)
        temp_4k.append((sheet.row_values(9*i+3)[j] +sheet.row_values(9*i+4)[j]+sheet.row_values(9*i+5)[j])/3.0)
        temp_6k.append((sheet.row_values(9*i+6)[j] +sheet.row_values(9*i+7)[j]+sheet.row_values(9*i+8)[j])/3.0)
    data_2k.append(temp_2k)
    data_4k.append(temp_4k)
    data_6k.append(temp_6k)
# 2.画线plot()
# 索引列表
seq=[]
for i in range(16):
    seq.append(i*0.02+0.02)
plt.xticks(seq)
    
for i in data_2k:
    plt.plot(seq,i,linewidth=2)  # 列表内的数据被视为y轴的值,x轴的值会根据列表值的索引位置自动产生


plt.title(label='2000孔后的外径', fontsize=18)
plt.xlabel(xlabel='到钻尖的距离(mm)', fontsize=15)
plt.ylabel(ylabel='外径(mm)', fontsize=15)


plt.tick_params(axis='both', labelsize=8, color='red', labelcolor='green')

# 显示绘制的图形
plt.show()
相关推荐
宇宙之一粟4 小时前
乐企版式文件生成平台
java·后端·python
学测绘的小杨20 小时前
CompassFusion:一个从 GNSS 到 GNSS/INS 组合导航的独立工程包
python
zzzzzz3101 天前
当产品经理说这个很简单:我用Python自动化处理奇葩需求的实战指南
python·pycharm·产品经理
雪隐1 天前
个人电脑玩AI-06让5060 Ti给你打工——不光能画画,Qwen3-TTS还能学人说话,连我老板都信了!
人工智能·后端·python
兵慌码乱2 天前
面向桌面端的资产管理系统分层架构设计与核心模块实现
python·系统架构·sqlite·pyqt5·数据库设计·桌面应用开发·mvc架构
hboot2 天前
AI工程师第三课 - 机器学习基础
python·scikit-learn·kaggle
顾林海2 天前
Agent入门阶段-编程基础-Python:流程控制
python·agent·ai编程
呱呱复呱呱2 天前
Django CBV 源码解读:一个请求是怎么找到你的 get() 方法的
python·django
曲幽2 天前
刚部署的 LibreTranslate 频频翻车?我掏出了 20 年前的 StarDict 词典,用 FastAPI 搭了个本地词典翻译 API
python·fastapi·web·translate·goldendict·libretranslate·stardict·pystardict
荣码2 天前
用Streamlit给AI应用套个界面,10行代码出Web页面
java·python