More
author |
Steve Losh <steve@stevelosh.com> |
date |
Sat, 12 Dec 2020 18:41:09 -0500 |
parents |
32bdaee0bb8b |
children |
56c21532b943 |
# Basic Settings ---------------------------------------------------------- {{{
set encoding utf8
set terminal qt noraise
set samples 1000
# }}}
# Styles ------------------------------------------------------------------ {{{
set grid
set pointintervalbox 1.3
clr = "call '~/src/dotfiles/gnuplot-scripts/color.gp'"
bwp = "call '~/src/dotfiles/gnuplot-scripts/black-and-white-points.gp'"
bwl = "call '~/src/dotfiles/gnuplot-scripts/black-and-white-lines.gp'"
bwlp = "call '~/src/dotfiles/gnuplot-scripts/black-and-white-lines-points.gp'"
@clr
# }}}
# Constants --------------------------------------------------------------- {{{
tau = 2 * pi
e = 2.71828182845905
r2 = sqrt(2.0)
rfc3339 = "%Y-%m-%d %H:%M:%S."
iso8601 = "%Y-%m-%dT%H:%M:%S."
# }}}
# Utility Functions ------------------------------------------------------- {{{
min(a, b) = (a<b) ? a : b
max(a, b) = (a>b) ? a : b
# }}}
# Linear Regression Fitting Functions ------------------------------------- {{{
baselrt(mm, bb, mprecision, bprecision) = sprintf(\
sprintf("%%.%dfx + %%.%df", mprecision, bprecision), \
mm, bb)
lr(x) = m * x + b
lrt(mp, bp) = baselrt(m, b, mp, bp)
lr2(x) = m2 * x + b2
lrt2(mp, bp) = baselrt(m2, b2, mp, bp)
lr3(x) = m3 * x + b3
lrt3(mp, bp) = baselrt(m3, b3, mp, bp)
lr4(x) = m4 * x + b4
lrt4(mp, bp) = baselrt(m4, b4, mp, bp)
# }}}
# Exporting --------------------------------------------------------------- {{{
export(file, terminal) = sprintf( \
"set terminal push;" . \
"set terminal %s;" . \
"set output '%s';" . \
"replot;" . \
"set output;" . \
"set terminal pop;" . \
"print system('realpath %s | nnl | pbcopy');" \
, terminal, file, file)
export_pdf(file) = export(file . '.pdf', "pdfcairo")
export_png(file) = export(file . '.png', "pngcairo")
pdf = "eval export_pdf('graph')"
png = "eval export_png('graph')"
# }}}
# Other ------------------------------------------------------------------- {{{
kdens(file, column, bandwidth) = sprintf( \
"stats '%s' using %d;" . \
"plot '%s' using %d:(1.0/STATS_records) smooth kdensity bandwidth %f;" \
, file, column, file, column, bandwidth)
cdf(file, column) = sprintf( \
"plot '%s' using %d:(1.0) smooth cnormal;" \
, file, column)
# }}}