Use Emacs Org-mode to graph your sleep pattern.
Switch branches/tags
Nothing to show
Clone or download
AlexDaniel Add tags to META6.json
I have no idea what to put there, so I'm just copying github tags
(which were autosuggested).
Latest commit c7ac458 Mar 22, 2018
Failed to load latest commit information.
bin Inline the default font Mar 22, 2018
examples Example image Mar 21, 2018
LICENSE Initial commit Jul 15, 2014
META6.json Add tags to META6.json Mar 22, 2018 Inline the default font Mar 22, 2018


Use Emacs Org-mode to graph your sleeping pattern.

my graph

⚠ Warning ⚠

This software is alpha-quality! The script was written to produce nice graphs for my own org file and it will give garbage if you feed it less than a few years of data.

The reason for raster images (instead of SVGs) is that it is hard to render thousands of lines and not have them rendered in a smudgy way. Raster images on 100% zoom always look perfect, anything else will typically look bad.

The script does pixel-banging, which is arguably easier than trying to force matplotlib or gnuplot to render 1-pixel lines. In fact, there were matplotlib and gnuplot versions of orgsleep, but they were only adequate before I surpassed a 2-year milestone. I'm still looking for a better solution, please let me know if there's something.


This command was used to generate the example:

bin/orgsleep '--title=Sleeping pattern of an average AlexDaniel' \
             '--subtitle=Sample size: 1'                          \
             '--out=examples/graph.png'                            \

Use your own org file to plot your data.


You must have Image::Magick Perl5 module installed. On Debian-based systems use:

sudo apt install libimage-magick-perl