Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
A trip to earth science with python as a companion
Search
Nikoleta
October 29, 2017
Programming
58
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
A trip to earth science with python as a companion
My talk for PyConUK 217.
Nikoleta
October 29, 2017
More Decks by Nikoleta
See All by Nikoleta
Arcas: Using Python to access open research literature
nikoletav3
1
190
Optimisation of short memory strategies in the Iterated Prisoners Dilemma
nikoletav3
0
62
Testing Research Software
nikoletav3
0
350
Arcas
nikoletav3
0
530
SSI Selection Day
nikoletav3
0
440
SWORDS-03-10-2016
nikoletav3
0
58
PyCon UK 2016
nikoletav3
0
180
Other Decks in Programming
See All in Programming
조합이폭발하는디자인시스템이걸눈으로도테스트하라고요
giljongyu
0
740
선언형 햅틱 라이브러리 진동을 소개합니다
l2hyunwoo
1
300
Web3Dライブラリを作ってVue Custom Rendererの仕組みを理解しよう / lets learn vue custom renderer by making 3d library
drumath2237
1
130
Materialが消えた日 〜真っ白なFlutterキャンバスにRenderObjectで絵を描く〜
umigishiaoi
0
150
Seven New Principles of Software Engineering
yegor256
0
470
3回つくってわかった、 定期実行ジョブ基盤の本質情報
takai
4
3.8k
クラウドゲーミングのパフォーマンス最適化に挑む / Cloud Gaming Performance Tuning
vivion
0
330
ChromeでローカルLLM
ryu1013
0
200
FactoryBotをやめればRSpecは速くなるのか?
yuta_onishi_97
0
1.6k
ActionController meets Protocol Buffers
sorah
1
800
Apple Intelligenceとオンデバイス時代の到来
yahir0
0
230
Claude Code ハーネスDeep Dive – 君はどこまで制御する? -
takateeen_knj
6
4.4k
Featured
See All Featured
Paper Plane (Part 1)
katiecoart
PRO
2
12k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
2
2.2k
GitHub's CSS Performance
jonrohan
1033
470k
Designing for Timeless Needs
cassininazir
1
550
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
370
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
740
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
550
Being A Developer After 40
akosma
PRO
92
590k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.9k
The browser strikes back
jonoalderson
0
1.9k
The untapped power of vector embeddings
frankvandijk
2
2k
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