日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python 读取地震道头数据_python地震数据可视化详解

發布時間:2025/3/8 python 10 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python 读取地震道头数据_python地震数据可视化详解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

本文實例為大家分享了python地震數據可視化的具體代碼,供大家參考,具體內容如下

準備工作:

在windows10下安裝python3.7,下載參考源碼到本地。

1. demo繪圖測試

demo繪圖指令

cmd> python seisplot.py --demo

問題1)缺少依賴包

File "D:/Desktop/python可視化/seisplot/seisplot.py", line 16, in

import yaml

ModuleNotFoundError: No module named 'yaml'

>pip3 install yaml

Could not find a version that satisfies the requirement yaml (from versions: )

No matching distribution found for yaml

查看environment.yml:

channels:

- defaults

- conda-forge

dependencies:

- matplotlib

- numpy

- obspy

- pillow

- pyyaml

安裝相關依賴包,如 obspy pillow pyyaml

cmd> pip3 install obspy

出現proxy error, 添加選項 --proxy server:port

安裝ok

問題2)配置文件的編碼異常

D:\Desktop\python可視化\seisplot>python seisplot.py --demo

[91m

Welcome to

┌─┐┌─┐┬┌─┐┌─┐┬ ┌─┐┌┬┐

└─┐├┤ │└─┐├─┘│ │ │ │

└─┘└─┘┴└─┘┴ ┴─┘└─┘ ┴

Good luck[0m

Traceback (most recent call last):

File "seisplot.py", line 421, in

cfg = yaml.load(f)

File "D:\ProgramFiles\Python36\lib\site-packages\yaml\__init__.py", line 70, in load

loader = Loader(stream)

File "D:\ProgramFiles\Python36\lib\site-packages\yaml\loader.py", line 34, in __init__

Reader.__init__(self, stream)

File "D:\ProgramFiles\Python36\lib\site-packages\yaml\reader.py", line 85, in __init__

self.determine_encoding()

File "D:\ProgramFiles\Python36\lib\site-packages\yaml\reader.py", line 124, in determine_encoding

self.update_raw()

File "D:\ProgramFiles\Python36\lib\site-packages\yaml\reader.py", line 178, in update_raw

data = self.stream.read(size)

UnicodeDecodeError: 'gbk' codec can't decode byte 0x99 in position 2003: illegal multibyte sequence

分析源碼中參數傳遞情況:

def load(stream, Loader=Loader):

"""

Parse the first YAML document in a stream

and produce the corresponding Python object.

"""

print(stream) ## debug by huanying03

loader = Loader(stream)

try:

return loader.get_single_data()

finally:

loader.dispose()

打印結果如下:

編碼不對?

65001? :UTF-8代碼頁

936 :默認的GBK

437 :是美國英語

仔細檢查發現config.yml中有異常字符,更正config.yml中錯誤字符:ok

問題3)python調試打印語句

print ("value=%d"%value)

demo數據繪圖結果

如下:

2. 本地數據繪圖測試

應用指令

cmd > python seisplot.py data/my.sgy

問題1)數據道的采樣值異常

filename data2/t10.sgy

seismic.py:104:dt=4000

seismic.py:104:ns=512

seismic.py:144:header=b'C 1 CLIENT'

n_traces 500

n_samples 512

dt 0.004

t_start 0

t_end 2.044

max_val inf

min_val -inf

clip_val 180462501764003194804057887685476352

Read data in 0.4 s

++++++++++++++++++++++++++++++++++++++++++++++++++++++++

PLOTTING

plot width 17.00 in

plot height 11.00 in

Traceback (most recent call last):

File "seisplot.py", line 442, in

main(t, cfg)

File "seisplot.py", line 214, in main

cfg)

File "D:\Desktop\python可視化\seisplot\plotter.py", line 123, in plot_histogram

y, x, _ = ax.hist(np.ravel(data), bins=int(100.0 / (clip_val / largest)),

OverflowError: cannot convert float infinity to integer

解決辦法:將數據做歸一化處理

問題2)數據文件的卷頭異常

filename data2/marmousi_vel.segy.hdrs.sgy.cdp.sgy

seismic.py:104:dt=10000

seismic.py:104:ns=350

seismic.py:144:header=b'\xc3@\xf1@\xc3\xd3\xc9\xc5\xd5\xe3'

Traceback (most recent call last):

File "seisplot.py", line 442, in

main(t, cfg)

File "seisplot.py", line 40, in main

s = Seismic.from_segy(target, params={'ndim': cfg['ndim']})

File "D:\Desktop\python可視化\seisplot\seismic.py", line 164, in from_segy

return cls.from_obspy(stream, params=params)

File "D:\Desktop\python可視化\seisplot\seismic.py", line 147, in from_obspy

x =np.array(list(stream.textual_file_header.decode()))

UnicodeDecodeError: 'utf-8' codec can't decode byte 0xc3 in position 0: invalid continuation byte

解決辦法:重寫3200字節的segy卷頭

marmousi相關數據繪圖

速度模型繪圖結果如下:

marmousi模型正演的炮集數據繪圖結果如下:

測試備忘

1

cygwin執行指令,可以看到反饋信息為彩色,分析信息很方便。

相比之下,cmd終端執行指令后的反饋信息可讀性較差。

2

本地數據出現異常后,通過cwp中的segyread, sushw, sugain, segywrite等程序進行修改,滿足繪圖程序要求。

1)3200字節的卷頭必須規范

2)道頭字中的cdpt取值必須規范(xline)

3)道采樣值最好歸一化處理。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

您可能感興趣的文章:

總結

以上是生活随笔為你收集整理的python 读取地震道头数据_python地震数据可视化详解的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 天天干夜夜欢 | 亚洲成人午夜在线 | 国产精品尤物 | 超碰免费在线97 | 日韩午夜激情 | 久久中文免费视频 | av中文字幕在线看 | 5个黑人躁我一个视频 | 亚洲m码 欧洲s码sss222 | 午夜肉伦伦 | 免费av在线网站 | 亚洲av成人精品毛片 | 国产麻豆一精品一av一免费 | 天堂…中文在线最新版在线 | 先锋资源一区 | 99国产精品久久久久久久成人热 | 日韩视频区| 欧美精品国产精品 | 四虎影视国产精品 | 日本精品人妻无码免费大全 | 国内黄色一级片 | sm乳奴虐乳调教bdsm | 国产高清sp | 欧美不在线 | www.日韩欧美 | 男女猛烈无遮挡免费视频 | 久久久久亚洲日日精品 | 成人v| 欧美性极品 | 欧美人狂配大交3d | 欧美精品在线看 | 男女免费视频 | 欧美a一级| 日韩视频在线一区二区 | 国产成人精品999在线观看 | aaaaa级少妇高潮大片免费看 | 一级a性色生活片久久毛片 爱爱高潮视频 | 999久久久 | 亚洲无人区小视频 | 高潮毛片又色又爽免费 | 日本不卡视频一区二区三区 | 黄色网址视频在线观看 | 亚洲欧美日韩在线不卡 | 国产sm网站 | 今天最新中文字幕mv高清 | 日日夜夜狠狠操 | 成人区人妻精品一熟女 | 名人明星三级videos | 中文字幕 成人 | 奇米第四色在线 | 黄色网址在线播放 | 成年人黄色网址 | 69国产精品视频 | 先锋资源在线视频 | 国产福利小视频 | 进去里片欧美 | 成人福利一区二区三区 | 强侵犯の奶水授乳羞羞漫虐 | 中文字幕在线一区二区三区 | 亚洲一区二区高清 | 欧美xxxⅹ性欧美大片 | 激情国产视频 | 免费黄色在线网站 | 亚洲福利视频网 | 精品国产伦一区二区三 | 天堂网a | 黄色岛国片 | 久草视频免费看 | 成人动漫免费观看 | 蜜桃视频在线观看www | 特黄特色特刺激免费播放 | 最新国产拍偷乱偷精品 | 就去吻综合 | 两个女人互添下身爱爱 | 中文字幕Av日韩精品 | 色啊色| 综合激情伊人 | 成人av动漫在线 | 成人区人妻精品一区二 | 青青av| 亚洲国产精品成人久久蜜臀 | 999这里只有精品 | 波多野结衣午夜 | 亚洲九九 | 中文字幕 欧美激情 | 99热亚洲 | 国产伦理一区 | 樱花电影最新免费观看国语版 | 欧美第一页在线观看 | 在线免费观看h片 | 91丨九色丨丰满 | 美女福利视频在线观看 | 欧美一级色片 | 一区二区av | 99re在线观看 | 91破处视频 | 九九影院最新理论片 | 麻豆av电影网 | 郑艳丽三级 |