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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Nikoleta
October 29, 2017
Programming
56
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
520
SSI Selection Day
nikoletav3
0
430
SWORDS-03-10-2016
nikoletav3
0
54
PyCon UK 2016
nikoletav3
0
180
Other Decks in Programming
See All in Programming
TiDB Cloudのカスタムコントローラーによるオートスケール対応
takaidohigasi
0
140
SREの越境 / SRE Collaboration
y0hgi
2
290
コードレビューのボトルネックを"する側"と"される側"の両面から解消する
yub0n
1
670
AHC070解法紹介
eijirou
0
140
設計次第でAIコードの読む量は減らせる / designing-for-code-reading
minodriven
29
13k
Java 27新機能 / Java 27 new features
kishida
2
180
モバイル交通系ICへのチャージ実例から考える、クロスプラットフォーム開発におけるiOS実機テスト設計とCI運用
yusuga
1
560
wkhtmltopdfの次どうするか問題2026
willnet
2
1.8k
Security issues being discussed on Web Platforms
petamoriken
0
1.4k
Heart of Swift Concurrency
koher
0
1.1k
[ハンズオン]AIへの指示だけで「五目並べ」を作ってみよう
satoshi256kbyte
1
300
re:Inventに行く前に知っておきたい現地参加のノウハウ
nokomoro3
0
280
Featured
See All Featured
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.9k
Designing Powerful Visuals for Engaging Learning
tmiket
1
580
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
850
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
2
2.9k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Test your architecture with Archunit
thirion
2
2.4k
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
390
The agentic SEO stack - context over prompts
schlessera
0
940
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
56
3.5k
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
340
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
120
120k
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