sac文件比较简单,不过有些设置没有处理,只是单纯的读取并绘图。

代码:

import struct

import pylab

class sacfile_wave:

def read(self,sFile):

#sFile='e:\\10.sac'

f=open(sFile,'rb')

hdrBin=f.read(632)

sfmt='f'*70+'I '*40+'8s '*22+'16s';

hdrFmt=struct.Struct(sfmt)

self.m_header=hdrFmt.unpack(hdrBin)

npts=int(self.m_header[79])

fmt_data='f'*npts

dataFmt=struct.Struct(fmt_data)

dataBin=f.read(4*npts)

f.close()

self.m_data=dataFmt.unpack(dataBin)

print "data len:",len(self.m_data)

def draw(self,sImageFile):

npts=len(self.m_data)

xd=range(1,npts+1)

pylab.figure(1)

pylab.plot(xd,self.m_data,linewidth=0.3)

pylab.savefig(sImageFile)

def exportAsc(self,sAscFile):

f2=open(sAscFile,"wt")

sdataAsc=[str(x) for x in self.m_data]

sDataAsc='\n'.join(sdataAsc)

f2.writelines(sDataAsc)

f2.close()

if __name__=="__main__":

sacfile='d:\\1\\1.sac'

sac=sacfile_wave()

sac.read(sacfile)

sac.draw("d:\\1\\1.png")

sac.exportAsc("d:\\1\\1.asc")

绘图效果如图:

python处理地震sac数据_试用python读取地震波形的二进制SAC文件相关推荐

  1. 利用python从网页查找数据_利用Python模拟淘宝的搜索过程并对数据进行可视化分析...

    数据挖掘入门与实战 公众号: datadw 本文讲述如何利用Python模拟淘宝的搜索过程并对搜索结果进行初步的数据可视化分析. 搜索过程的模拟:淘宝的搜索页面有两种形式, 一种形式是, 2019/2 ...

  2. python二进制文件 删除尾部数据_在Python中读取和切片二进制数据文件的最快方法...

    我有一个处理脚本,用于提取"uint16"类型的二进制数据文件,并一次以6400块的形式进行各种处理.该代码最初是用Matlab编写的,但由于分析代码是用 Python编写的,我们 ...

  3. python爬取客流数据_【python爬取雅虎财经数据】“五一”和广交会客流叠加 广州出入境客流呈“双高峰”...

    [python爬取雅虎财经数据]"五一"和广交会客流叠加 广州出入境客流呈"双高峰" 发布时间:2020-10-13 18:06:00 阅读量:650 作者:乔 ...

  4. python 读取地震道头数据_使用python获取(宜宾市地震信息)地震信息

    6月17日22分25分,四川省宜宾市长宁县发生了6.0级地震,成都高新减灾研究所与应急管理部门联合建设的大陆地震预警网成功预警本次地震,提前10秒向宜宾市预警,提前61秒向成都预警. 虽然自己还不能写 ...

  5. python 读取地震道头数据_【Python】OGR库(1):读取矢量数据

    OGR库是一个非常流行的处理地理空间矢量数据的开源库.它可以读取丰富的数据格式,允许用户进行几何处理.属性表操作.数据分析,是个非常强大的开源GIS库.目前OGR已集成在GDAL库中,可以说是GIS的 ...

  6. python 网页上显示数据_用Python实现网页数据抓取

    需求: 获取某网站近10万条数据记录的相关详细信息. 分析:数据的基本信息存放于近1万个页面上,每个页面上10条记录.如果想获取特定数据记录的详细信息,需在基本信息页面上点击相应记录条目,跳转到详细信 ...

  7. python教程怎么抓起数据_介绍python 数据抓取三种方法

    三种数据抓取的方法正则表达式(re库) BeautifulSoup(bs4) lxml *利用之前构建的下载网页函数,获取目标网页的html,我们以https://guojiadiqu.bmcx.co ...

  8. python使用elasticsearch维护数据_使用Python对ElasticSearch获取数据及操作

    #!/usr/bin/env python#-*- coding: utf-8 -*- """@Time : 2018/7/4 @Author : LiuXueWen @ ...

  9. python爬取行业数据_用Python进行Web爬取数据

    介绍 我们拥有的数据太少,无法建立机器学习模型.我们需要更多数据! 如果这句话听起来很熟悉,那么你并不孤单!希望获得更多数据来训练我们的机器学习模型是一个一直困扰人们的问题.我们无法在数据科学项目中获 ...

最新文章

  1. 一个母婴电子商务网站贝贝网的大数据平台及机器学习实践【转】
  2. python【数据结构与算法】贝祖定理简单讲解
  3. 错误:cl: 命令行 error D8021 :无效的数值参数“/Wno-cpp”
  4. 计算机维修工国家职业标准,计算机维修工国家职业标准.pdf
  5. jenkins ssh发布配置
  6. sqlite java blob_【转】好东西!sqlite3中BLOB数据类型存储大对象运用示例
  7. Dubbo性能调优参数及原理
  8. 网络 如何解决输入路由器管理地址192.168.1.1进不去
  9. C++中typedef void(*F)(类型)解读
  10. POJ - 3624 (01背包问题)(动态规划-滚动数组)
  11. 查看Mysql数据库版本
  12. 理正深基坑6.0软件备忘录_梳理使用方法01
  13. weight_decay一般设置为多少_建盏一般多少钱?建阳建盏定价的依据是什么?宋韵建盏为你解析...
  14. 42表盘直径是从哪测量_手表尺寸怎么选择 手表尺寸怎么测量
  15. 水库欧神评论雄安新区房产:999年358天
  16. 防汛可视化:雨季来临,如何做好防汛措施?
  17. android生成将布局生成海报保存并分享
  18. 远程桌面分辨率取决于服务器还是客户端,关于Windows8.1高分辨率,远程桌面连接的界面显示很小的问题~...
  19. pycharm中导入模块
  20. C语言中二维字符数组的定义和初始化

热门文章

  1. 虚拟网络主流架构(让虚拟机上网的三种方案)
  2. 供水管网压力如何进行精细化管理?
  3. XML文件与xsl文件的作用与关系
  4. linux 如何打开 终端(命令行)所在的文件夹
  5. 虚拟机配置Sendmail服务器
  6. 菜鸡的MVP架构漫谈
  7. C# 企业微信接口发送消息出现错误代码60020解决方案,希望能给大家带来帮助。
  8. NIL、NIL、NULL和NSNULL区别
  9. 使用css制作动态时钟详细教程
  10. 修改hosts文件无法保存,只能另存为txt的解决方法