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()
相关推荐
星空椰6 小时前
Python 面向对象高级:继承与类定义详解
开发语言·python
凯瑟琳.奥古斯特7 小时前
高阶子查询题目精炼
开发语言·数据库·python·职场和发展·数据库开发
风之所往_7 小时前
Python 3.4 新特性全面总结
python
太阳上的雨天8 小时前
任何格式的文件转Markdown
python·ai
yaoxin5211238 小时前
419. 现代 Java IO 最佳实践 - 写入文本文件
java·windows·python
weixin_468466858 小时前
纳米 AI 搜索新手极速上手指南
人工智能·python·深度学习·搜索引擎·ai·语言模型·自然语言处理
凯瑟琳.奥古斯特8 小时前
数据库原理选择题精选
数据库·python·职场和发展
彦为君9 小时前
JavaSE-07-异常机制
java·开发语言·后端·python·spring
适应规律9 小时前
【无标题】
人工智能·python·算法