Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
A trip to earth science with python as a companion
Search
Nikoleta
October 29, 2017
Programming
0
46
A trip to earth science with python as a companion
My talk for PyConUK 217.
Nikoleta
October 29, 2017
Tweet
Share
More Decks by Nikoleta
See All by Nikoleta
Arcas: Using Python to access open research literature
nikoletav3
1
170
Optimisation of short memory strategies in the Iterated Prisoners Dilemma
nikoletav3
0
54
Testing Research Software
nikoletav3
0
310
Arcas
nikoletav3
0
450
SSI Selection Day
nikoletav3
0
400
SWORDS-03-10-2016
nikoletav3
0
48
PyCon UK 2016
nikoletav3
0
160
Other Decks in Programming
See All in Programming
go test -json そして testing.T.Attr / Kyoto.go #63
utgwkk
3
280
250830 IaCの選定~AWS SAMのLambdaをECSに乗り換えたときの備忘録~
east_takumi
0
380
サーバーサイドのビルド時間87倍高速化
plaidtech
PRO
0
720
MLH State of the League: 2026 Season
theycallmeswift
0
230
CJK and Unicode From a PHP Committer
youkidearitai
PRO
0
110
「手軽で便利」に潜む罠。 Popover API を WCAG 2.2の視点で安全に使うには
taitotnk
0
810
アプリの "かわいい" を支えるアニメーションツールRiveについて
uetyo
0
210
【第4回】関東Kaggler会「Kaggleは執筆に役立つ」
mipypf
0
1.1k
テストカバレッジ100%を10年続けて得られた学びと品質
mottyzzz
2
500
print("Hello, World")
eddie
1
520
HTMLの品質ってなんだっけ? “HTMLクライテリア”の設計と実践
unachang113
4
2.6k
Protocol Buffersの型を超えて拡張性を得る / Beyond Protocol Buffers Types Achieving Extensibility
linyows
0
110
Featured
See All Featured
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Music & Morning Musume
bryan
46
6.8k
Building an army of robots
kneath
306
46k
The Pragmatic Product Professional
lauravandoore
36
6.9k
RailsConf 2023
tenderlove
30
1.2k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.9k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
187
54k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
How to train your dragon (web standard)
notwaldorf
96
6.2k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Designing for humans not robots
tammielis
253
25k
Context Engineering - Making Every Token Count
addyosmani
1
17
Transcript
A trip to earth science with Python as a companion
@NikoletaGlyn
HINTS:
HINTS: several things have been invented by my ancestors;
mathematics make use of my alphabet;
None
None
None
N S W E
None
cores crust mantle
>>> import quakefeeds >>> from quakefeeds import QuakeFeed >>> feed
= QuakeFeed("2.5", "month") >>> feed.title ’USGS Magnitude 2.5+ Earthquakes, Past Month’
MAGNITUDE
Class Magnitude Great 8 or more Major 7 - 7.9
Strong 6 - 6.9 Moderate 5 - 5.9 Light 4 - 4.9 Minor 3 -3.9
{’geometry’: {’coordinates’: [27.3346, 36.9405, 5.01], ’type’: ’Point’}, ’id’: ’us1000apsm’, ’properties’:
{’alert’: None, ’cdi’: 4.1, ’code’: ’1000apsm’, ’detail’: ’https://earthquake.usgs.gov/earthquakes/feed/v1.0/detail/us1000apsm.geojson’, ’dmin’: 0.962, ’felt’: 59, ’gap’: 45, ’ids’: ’,us1000apsm,’, ’mag’: 4.4, ’magType’: ’mb’, ’mmi’: None, ’net’: ’us’, ’nst’: None, ’place’: ’6km NE of Kos, Greece’, ’rms’: 0.82, ’sig’: 322, ’sources’: ’,us,’, ’status’: ’reviewed’, ’time’: 1507665564350, ’title’: ’M 4.4 - 6km NE of Kos, Greece’, ’tsunami’: 0, ’type’: ’earthquake’, ’types’: ’,dyfi,geoserve,origin,phase-data,’, ’tz’: 120, ’updated’: 1508097562926, ’url’: ’https://earthquake.usgs.gov/earthquakes/eventpage/us1000apsm’}, ’type’: ’Feature’}
>>> import earthquakes >>> from earthquakes import earthquakes >>> report
= earthquakes.get_report() >>> report[’title’] ’USGS Significant Earthquakes, Past Hour’ >>> report = earthquakes.get_report(’week’, ’4.5’)
>>> create_map = feed.create_google_map(style="titled") >>> feed.write_google_map("map.html", style="titled")
MATPLOTLIB BASEMAP TOOLKIT http://introtopython.org/visualization_earthquakes.html
from mpl_toolkits.basemap import Basemap import matplotlib.pyplot as plt import numpy
as np plt.figure() my_map = Basemap(projection=’ortho’, lat_0=22, lon_0=30.22, resolution=’h’) my_map.drawcoastlines() plt.show()
from mpl_toolkits.basemap import Basemap import matplotlib.pyplot as plt import numpy
as np plt.figure() my_map = Basemap(projection=’ortho’, lat_0=22, lon_0=30.22, resolution=’h’) my_map.drawcoastlines() my_map.drawcountries() my_map.fillcontinents(color=’orange’) my_map.drawmapboundary() meridians = np.arange(0, 360, 30) parallels = np.arange(-90, 90, 30) my_map.drawmeridians(meridians) my_map.drawparallels(parallels) plt.show()
World Map
plt.figure() my_map = Basemap(projection=’merc’, lat_0=40, lon_0=19, resolution = ’h’, llcrnrlon=20.577,
llcrnrlat=33.568 urcrnrlon=28.1905, urcrnrlat=39.701) my_map.drawcoastlines() my_map.drawcountries() my_map.fillcontinents(color=’orange’) plt.axis(’off’) plt.show()
plt.figure() my_map = Basemap(projection=’merc’, lat_0=40, lon_0=19, resolution = ’h’, llcrnrlon=20.577,
llcrnrlat=33.568 urcrnrlon=28.1905, urcrnrlat=39.701) my_map.drawcoastlines() my_map.drawcountries() my_map.fillcontinents(color=’orange’) x,y = my_map(lons, lats) my_map.plot(x, y, ’ro’, markersize=10) plt.axis(’off’) plt.show()
time 3.5 4.0 4.5 5.0 5.5 6.0 6.5 7.0 magnitude
Mexico Earthquake
World Map magnitude 5 magnitude <5 magnitude <3
https://github.com/obspy/obspy/wiki
07:22:2907:22:5907:23:2907:23:5907:24:2907:24:59 1200 800 400 0 400 800 1200 .RJOB..Z 2005-10-06T07:21:59.85
- 2005-10-06T07:24:59.845
>>> import quakefeeds >>> import earthquakes >>> from mpl_toolkits.basemap import
Basemap >>> import obspy @NikoletaGlyn https://github.com/Nikoleta-v3