Python:以小时,分钟和秒为单位读取文本文件;和度数,弧分和弧秒
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Python:以小时,分钟和秒为单位读取文本文件;和度数,弧分和弧秒,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1509字,纯文字阅读大概需要3分钟。
内容图文
![Python:以小时,分钟和秒为单位读取文本文件;和度数,弧分和弧秒](/upload/InfoBanner/zyjiaocheng/785/fd3c8282a5f444a3bfd5dc1a969f98fe.jpg)
我试图使用matplotlib从python中的文件中绘制数据.
该文件包含2列.第一列有小时:分钟:秒.第二列有度:弧分:弧秒.
对于小时:分钟:秒我使用datetime.strptime(‘%H:%M:%S.%f’).是否有类似的程度函数:arc minutes:Python或Matplotlib中的arc秒?
以下是数据文件的示例:
00:06:04.8 -70:00:00.0
00:07:01.7 -66:00:00.0
00:14:17.7 -59:00:00.0
00:23:00.0 -52:00:00.0
00:23:50.3 -49:00:00.0
00:23:54.4 -29:00:00.0
00:23:59.4 -28:00:00.0
00:24:03.7 -26:00:00.0
00:24:03.8 -14:00:00.0
00:24:03.9 +25:00:00.0
00:30:30.10 +30:00:00.0
解决方法:
使用matplotlib.dates.datestr2num,您可以轻松地将第一列转换为可绘制的数字,但我找不到第二列的函数.但是,您可以构建一个函数来处理它:
import numpy as np
def calc_hour( str ):
hour, min, sec = [float(i) for i in str.split(':')]
min += sec/60.
hour += min/60.
return hour
calc_hour = np.vectorize( calc_hour )
def calc_deg( str ):
deg, min, sec = [float(i) for i in str.split(':')]
min += sec/60.
deg += min/60.
return deg
calc_deg = np.vectorize( calc_deg )
然后,从所谓的’tmp.txt’文件中读取数据:
values = np.loadtxt('tmp.txt', dtype=str)
hours= calc_hour( values[:,0] )
degs = calc_deg( values[:,1] )
获得类似的东西:
hours = array([ 0.10133333, 0.11713889, 0.23825 , 0.38333333, 0.39730556,
0.39844444, 0.39983333, 0.40102778, 0.40105556, 0.40108333,
0.50836111])
degs = array([-70., -66., -59., -52., -49., -29., -28., -26., -14., 25., 30.])
可以绘制:
import matplotlib.pyplot as plt
plt.plot(hours,degs)
对于你的情况,给予:
内容总结
以上是互联网集市为您收集整理的Python:以小时,分钟和秒为单位读取文本文件;和度数,弧分和弧秒全部内容,希望文章能够帮你解决Python:以小时,分钟和秒为单位读取文本文件;和度数,弧分和弧秒所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。