Skip to content

Instantly share code, notes, and snippets.

View cast42's full-sized avatar

Lode Nachtergaele cast42

View GitHub Profile
@cast42
cast42 / 74.html
Created June 8, 2012 09:57
Static maps api voor knooppunt 74
<html>
<body>
<img src="http://maps.google.com/maps/api/staticmap?center=50.8661,4.6806&zoom=15&size=320x480&markers=icon:http://www.fietsroute.org/Logo/markers/markers/marker74.png%7C50.8661,4.6806&sensor=false"/>
</body>
</html>
@cast42
cast42 / euler.py
Last active January 2, 2016 19:29
Check that Euler's polynomial generates primes for the values 0 to 40.
def isPrime(n):
"""Returns True if n is prime http://stackoverflow.com/a/1801446/2987382"""
if n == 2 or n==3: return True
if n < 2 or n % 2 == 0: return False
if n % 3 == 0: return False
i = 5
w = 2
while i * i <= n:
if n % i == 0:
@cast42
cast42 / gist:8729445
Last active August 29, 2015 13:55
Adding virtual power to TCX file
import re
with open('29-01-14 20-53-27.tcx', 'rt') as f:
for line in f:
print line,
match = re.match('\s+<Speed>(\d+.\d+)',line)
if match:
speed = float(match.group(1))
speed_in_kmperh = speed/1000.0*60.0*60.0
power_in_watt = int(speed_in_kmperh/6.0*50.0)
"""vpower.py. Add power to TCX file for Garmin Tacx Blue Motion indoor trainer
Usage:
vpower.py [--lever=<lv>] INPUT
Arguments:
INPUT Required .TCX input filename
Options:
-h --help Show this.
<?xml version="1.0" encoding="UTF-8"?>
<gpx creator="StravaGPX" version="1.1" xmlns="http://www.topografix.com/GPX/1/1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.topografix.com/GPX/1/1 http://www.topografix.com/GPX/1/1/gpx.xsd http://www.garmin.com/xmlschemas/GpxExtensions/v3 http://www.garmin.com/xmlschemas/GpxExtensionsv3.xsd http://www.garmin.com/xmlschemas/TrackPointExtension/v1 http://www.garmin.com/xmlschemas/TrackPointExtensionv1.xsd http://www.garmin.com/xmlschemas/GpxExtensions/v3 http://www.garmin.com/xmlschemas/GpxExtensionsv3.xsd http://www.garmin.com/xmlschemas/TrackPointExtension/v1 http://www.garmin.com/xmlschemas/TrackPointExtensionv1.xsd http://www.garmin.com/xmlschemas/GpxExtensions/v3 http://www.garmin.com/xmlschemas/GpxExtensionsv3.xsd http://www.garmin.com/xmlschemas/TrackPointExtension/v1 http://www.garmin.com/xmlschemas/TrackPointExtensionv1.xsd http://www.garmin.com/xmlschemas/GpxExtensions/v3 http://www.garmin.com/xmlschemas/GpxExtensionsv3.x
@cast42
cast42 / parse_strava_gpx_minidom.py
Created June 18, 2014 12:44
Parse GPX file generated by Strava containing heartrate, cadence and temperature
from xml.dom import minidom
import datetime
tracks = {}
def parseTrack(trk):
name = trk.getElementsByTagName('name')[0].firstChild.data
if not name in tracks:
tracks[name] = []
for trkseg in trk.getElementsByTagName('trkseg'):
for trkpt in trkseg.getElementsByTagName('trkpt'):
@cast42
cast42 / short_ride.pgx
Created June 18, 2014 13:07
Short example GPX file exported from Strava
<?xml version="1.0" encoding="UTF-8"?>
<gpx creator="StravaGPX" version="1.1" xmlns="http://www.topografix.com/GPX/1/1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.topografix.com/GPX/1/1 http://www.topografix.com/GPX/1/1/gpx.xsd http://www.garmin.com/xmlschemas/GpxExtensions/v3 http://www.garmin.com/xmlschemas/GpxExtensionsv3.xsd http://www.garmin.com/xmlschemas/TrackPointExtension/v1 http://www.garmin.com/xmlschemas/TrackPointExtensionv1.xsd http://www.garmin.com/xmlschemas/GpxExtensions/v3 http://www.garmin.com/xmlschemas/GpxExtensionsv3.xsd http://www.garmin.com/xmlschemas/TrackPointExtension/v1 http://www.garmin.com/xmlschemas/TrackPointExtensionv1.xsd http://www.garmin.com/xmlschemas/GpxExtensions/v3 http://www.garmin.com/xmlschemas/GpxExtensionsv3.xsd http://www.garmin.com/xmlschemas/TrackPointExtension/v1 http://www.garmin.com/xmlschemas/TrackPointExtensionv1.xsd http://www.garmin.com/xmlschemas/GpxExtensions/v3 http://www.garmin.com/xmlschemas/GpxExtensionsv3.x
Verifying that +cast42 is my openname (Bitcoin username). https://onename.io/cast42
@cast42
cast42 / index.html
Created December 9, 2014 07:31
Your Title // source http://jsbin.com/sicuku
<!DOCTYPE html>
<html>
<head>
<link href="http://code.jquery.com/mobile/1.4.2/jquery.mobile-1.4.2.min.css" rel="stylesheet" type="text/css" />
<script src="http://code.jquery.com/jquery-1.11.0.min.js"></script>
<script src="http://code.jquery.com/mobile/1.4.2/jquery.mobile-1.4.2.min.js"></script>
<script src="https://cdn.firebase.com/js/client/1.1.1/firebase.js"></script>
<script src="http://cdnjs.cloudflare.com/ajax/libs/bacon.js/0.7.37/Bacon.min.js"></script>
<meta charset="utf-8" />
@cast42
cast42 / gist:20b991f5d04a8307075f
Created June 4, 2015 20:44
Plot N clusters after PCA
# from https://github.com/ogrisel/parallel_ml_tutorial/blob/master/rendered_notebooks/05%20-%20Model%20Selection%20and%20Assessment.ipynb
from itertools import cycle
colors = ['b', 'g', 'r', 'c', 'm', 'y', 'k']
markers = ['+', 'o', '^', 'v', '<', '>', 'D', 'h', 's']
for i, c, m in zip(np.unique(y), cycle(colors), cycle(markers)):
plt.scatter(X_pca[y == i, 0], X_pca[y == i, 1],
c=c, marker=m, label=i, alpha=0.5)