使用Python绘制出类似Excel或者MATLAB的曲线还是比较容易就能够实现的,需要用到的额外库有两个,numpy和matplotlib。使用这两个模块实现的曲线绘制其实在一定程度上更像是MATLAB的plot功能,不过今天看了一下matplotlib网站上的信息,现在的功能更为强劲了,而且已经支持三维图像的绘制。
模块库的安装非常简单,我使用的Mac,在Mac上用pip进行了两个模块库的安装都十分顺畅。相信其他平台基本上也都这样,如果能够联网,这种安装方式是十分推荐的,确实是简单。
我用Python读取我自己日常运动的数据,数据以Numbers的方式进行统计,导出成Excel文件。为了能够读取Excel文件,我又安装了xlrd模块库。
从matplotlib的网站上抄了一小段代码简单做了一下修改,加入了数据读取以及简单的计算,代码如下:
#!/usr/bin/python import numpy as np import matplotlib.pyplot as plt from xlrd import open_workbook def SportLine(excel_file): days_year = [] target_km = [] records = [] sum_records = [] pct_records = [] target_pct = [] fig,axs = plt.subplots(3) for i in range(365): days_year.append(i) for day in days_year: target_km.append(float(day)/365.0 * 1000.0) # read record data book = open_workbook(excel_file) sheet = book.sheet_by_name('record') rows_num = sheet.nrows cols_num = sheet.ncols for row_num in range(3,368): try: records.append(float(sheet.cell(row_num,1).value)) except: records.append(0.0) # calculate sum of records sum_record = 0.0 for each_record in records: sum_record += each_record sum_records.append(sum_record) # calculate pct of all for each_sum in sum_records: pct_records.append(each_sum / 1000.0) # calculate target pct for day in range(1,366): target_pct.append(float(day)/365.0) # plot target and sum trend ax = axs[0] ax.plot(days_year,sum_records) ax.plot(days_year,target_km) ax.set_title('distance-year-km') ax.grid(True) # plot record ax = axs[1] ax.plot(days_year,records) ax.set_title('distance-day-km') ax.grid(True) # plot percentage ax = axs[2] ax.plot(days_year,pct_records) ax.plot(days_year,target_pct) ax.set_title('pct-100%') ax.grid(True) plt.show() SportLine('records.xlsx')
我的运动数据记录电子表格格式如下:
程序运行,画出的曲线如下:
基本差不多了,后面需要做的只有细节上的修正了。
以上这篇Python绘制二维曲线的日常应用详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
暂无评论...
更新日志
2024年11月27日
2024年11月27日
- 凤飞飞《我们的主题曲》飞跃制作[正版原抓WAV+CUE]
- 刘嘉亮《亮情歌2》[WAV+CUE][1G]
- 红馆40·谭咏麟《歌者恋歌浓情30年演唱会》3CD[低速原抓WAV+CUE][1.8G]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[320K/MP3][193.25MB]
- 【轻音乐】曼托凡尼乐团《精选辑》2CD.1998[FLAC+CUE整轨]
- 邝美云《心中有爱》1989年香港DMIJP版1MTO东芝首版[WAV+CUE]
- 群星《情叹-发烧女声DSD》天籁女声发烧碟[WAV+CUE]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[FLAC/分轨][748.03MB]
- 理想混蛋《Origin Sessions》[320K/MP3][37.47MB]
- 公馆青少年《我其实一点都不酷》[320K/MP3][78.78MB]
- 群星《情叹-发烧男声DSD》最值得珍藏的完美男声[WAV+CUE]
- 群星《国韵飘香·贵妃醉酒HQCD黑胶王》2CD[WAV]
- 卫兰《DAUGHTER》【低速原抓WAV+CUE】
- 公馆青少年《我其实一点都不酷》[FLAC/分轨][398.22MB]
- ZWEI《迟暮的花 (Explicit)》[320K/MP3][57.16MB]