Skip to content

Instantly share code, notes, and snippets.

Avatar

Till Dettmering dettmering

View GitHub Profile
@dettmering
dettmering / gist:3767366
Created Sep 22, 2012
Python: Read CSV file into array
View gist:3767366
def readcsv(filename):
ifile = open(filename, "rU")
reader = csv.reader(ifile, delimiter=";")
rownum = 0
a = []
for row in reader:
a.append (row)
rownum += 1
@dettmering
dettmering / gist:3767424
Created Sep 22, 2012
PHP: Convert UNIX time into relative timestamp
View gist:3767424
// converts UNIX seconds into relative format
function relativeDate($date) {
$secondsago = time() - $date;
if ($secondsago <= 59) {$timestamp = "less than a minute ago";}
else if ($secondsago <= 119) {$timestamp = floor(($secondsago / 60)) . " minute ago (" . strftime('%R', $date) . ")";}
else if ($secondsago <= 3599) {$timestamp = round(($secondsago / 60)) . " minutes ago (" . strftime('%R', $date) . ")";}
else if ($secondsago <= 7199) {$timestamp = round(($secondsago / 3600),1) . " hours ago (" . strftime('%a %R', $date) . ")";}
else if ($secondsago <= 86400) {$timestamp = round(($secondsago / 3600)) . " hours ago (" . strftime('%a %R', $date) . ")";}
else if ($secondsago <= 345600) {$timestamp = round(($secondsago / 86400)) . " days ago (" . strftime('%a %R', $date) . ")";}
@dettmering
dettmering / bbox.sh
Created Nov 9, 2012
Shell: Recalculate bounding box of EPS files
View bbox.sh
#!/bin/bash
# This script recalculates all bounding boxes of all eps files in the same folder
# requires epstool
for f in *.eps
do
g=$(echo $f | sed 's/\(.*\)\..*/\1/')
echo Processing $f ...
epstool --copy --bbox $g.eps $g-new.eps
done
@dettmering
dettmering / gist:4045392
Created Nov 9, 2012
Bash: Add all EPS files in the directory to a TeX file
View gist:4045392
#!/bin/bash
# Puts all eps files in folder in figure environment
rm figures.tex
echo "\documentclass[a4paper,10pt]{article}
\usepackage[utf8]{inputenc}
\usepackage{graphicx} % support the \includegraphics command and options
\usepackage{epstopdf}
@dettmering
dettmering / gist:4587442
Last active Dec 11, 2015
LaTeX: TikZ playground.
View gist:4587442
\documentclass{article}
\usepackage{tikz}
\usepackage{pgfplots}
\usepackage[scaled]{helvet}
\usepackage[T1]{fontenc}
\usepackage{verbatim}
\renewcommand*\familydefault{\sfdefault} %% Only if the base font of the document is to be sans serif
@dettmering
dettmering / gist:4943573
Last active Dec 13, 2015
LaTeX: Template for generating PDF with figures for paper submission
View gist:4943573
\documentclass{article}
\usepackage[scaled]{helvet}
\usepackage[T1]{fontenc}
\usepackage{verbatim}
\usepackage{graphicx}
\usepackage{epstopdf}
\usepackage[nomarkers,nofiglist,figuresonly]{endfloat}
\pagenumbering{gobble} % removes page numbering
@dettmering
dettmering / gist:5070274
Last active Dec 14, 2015
Python: Generate heat map
View gist:5070274
def rgb(r,g,b): # Just returns r, g, b in this case. Can be used to reformat RGB values if necessary.
return r,g,b
def heat(min, max, val, type): # Takes min and max values and the value to be heatmapped. Type is the look up table, see below.
min = float(min)
max = float(max)
val = float(val)
val = (val - min) / (max - min) # normalize val to min and max
@dettmering
dettmering / gist:5075213
Last active Dec 14, 2015
Bash: Parse all GD files in folder
View gist:5075213
#!/bin/bash
# This script creates eps files from all .gd or .exec files in a directory.
if [ ! -d "img/" ];
then
mkdir img
fi
rm img/*-gd.eps
touch execfile # Create execfile
@dettmering
dettmering / colorpalette.R
Created Oct 1, 2013
R: Cool heatmap color palette
View colorpalette.R
library(RColorBrewer)
brewer.pal(30, "RdYlBu")
@dettmering
dettmering / imgrename.sh
Created Feb 14, 2014
Bash: Renames groups of images (329L_**_000x.tif) with a combined md5 hash of the group (329L_**-bac8dacd79_000x.tif)
View imgrename.sh
#!/bin/bash
# Rename image files with md5 hash
mkdir out
for f in *.tif
do
splt=(${f//_/ })
c=$(cat ${splt[0]}\_${splt[1]}\_* | md5) # 329L_23_*
o=${splt[0]}\_${splt[1]}\-${c:0:10}\_${splt[2]}
You can’t perform that action at this time.