Skip to content

Instantly share code, notes, and snippets.

View sjpfenninger's full-sized avatar

Stefan Pfenninger sjpfenninger

View GitHub Profile
@sjpfenninger
sjpfenninger / LICENSE
Created August 14, 2019 11:36
Plot filled area charts to visualise distribution in time series data
MIT License
Copyright (c) 2019 Stefan Pfenninger
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
@sjpfenninger
sjpfenninger / load_jupyter.sh
Last active August 7, 2019 06:50 — forked from brynpickering/jupyter_job.sh
Load Jupyter lab on a ETH euler compute node
#!/bin/bash
usage="$(basename "$0") [-h] [-p W R] -- program to run jupyter lab on a compute node, for remote access
where:
-h show this help text
-p set the tunnelling port (default = 8889)
-W set the runtime, in minutes (default = 960)
-R set the memory allocation (default = 80G)"
set -e
# extracted from http//www.naturalearthdata.com/download/110m/cultural/ne_110m_admin_0_countries.zip
# under public domain terms
country_bounding_boxes = {
'AF': ('Afghanistan', (60.5284298033, 29.318572496, 75.1580277851, 38.4862816432)),
'AO': ('Angola', (11.6400960629, -17.9306364885, 24.0799052263, -4.43802336998)),
'AL': ('Albania', (19.3044861183, 39.624997667, 21.0200403175, 42.6882473822)),
'AE': ('United Arab Emirates', (51.5795186705, 22.4969475367, 56.3968473651, 26.055464179)),
'AR': ('Argentina', (-73.4154357571, -55.25, -53.628348965, -21.8323104794)),
'AM': ('Armenia', (43.5827458026, 38.7412014837, 46.5057198423, 41.2481285671)),
@sjpfenninger
sjpfenninger / howto-calliope-euler.md
Last active October 31, 2019 15:37
HOWTO: Use Calliope on the `euler` cluster

HOWTO: Use Calliope on the euler cluster

Installation

To install the latest version of Calliope, you need to run three commands in order:

module load python/3.7.1
export PATH=~/.local/bin:$PATH
pip install --user --upgrade calliope
@sjpfenninger
sjpfenninger / pypsa_plotly.py
Last active April 12, 2019 13:16 — forked from nworbmot/pypsa_plotly.py
Minimal example of plotly working with PyPSA - using Mapbox
mapbox_access_token = 'PASTE_YOUR_TOKEN_HERE'
import plotly.offline as py
from plotly.graph_objs import *
import plotly.graph_objs as go
import pypsa
py.init_notebook_mode(connected=True)
%matplotlib inline
@sjpfenninger
sjpfenninger / requirements.yml
Last active April 5, 2017 05:32
requirements.yml for visualisation tutorial
name: vis-tutorial
channels:
- conda-forge
- defaults
dependencies:
- basemap=1.0.8.dev0
- basemap-data-hires=1.0.8.dev0
- bokeh=0.12.4
- cartopy=0.15.1
- holoviews=1.6.2

Calliope installation instructions

These instructions install the most recent development version of Calliope, rather than the most recent stable version, alongside all requirements to solve a simple Calliope model using GLPK. For larger problems, it is recommended to additionally install Gurobi.

Windows

  1. Download and install miniconda from here: http://conda.pydata.org/miniconda.html

  2. Open a command prompt and run the following commands:

@sjpfenninger
sjpfenninger / keybase.md
Created July 23, 2015 07:10
keybase.md

Keybase proof

I hereby claim:

  • I am sjpfenninger on github.
  • I am sjpfenninger (https://keybase.io/sjpfenninger) on keybase.
  • I have a public key whose fingerprint is 45B3 2B32 6B55 E411 C8EF D020 C554 BB0A A47E 8502

To claim this, I am signing this object:

@sjpfenninger
sjpfenninger / tmux.md
Last active August 29, 2015 14:16 — forked from andreyvit/tmux.md

tmux cheat sheet

(C-x means ctrl+x, M-x means alt+x)

Prefix key

The default prefix is C-b. If you (or your muscle memory) prefer C-a, you need to add this to ~/.tmux.conf:

remap prefix to Control + a

@sjpfenninger
sjpfenninger / rulers.js
Created August 29, 2014 14:28
CodeMirror rulers.js: Backport of revision 3be0f06 to v3.22.0
//
// Backport of revision 3be0f06 to fix scroll bars appearing due to rulers
//
// https://github.com/marijnh/CodeMirror/commit/3be0f06
//
(function() {
"use strict";
CodeMirror.defineOption("rulers", false, function(cm, val, old) {