fix the documentation Add missing manpages, update README, document the format … | |
git clone git://bitreich.org/ploot git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65… | |
Log | |
Files | |
Refs | |
Tags | |
README | |
LICENSE | |
--- | |
commit 18a41de0122bffc4889534a5a4cb27e2e875291c | |
parent 50aea1263cf0d68aa2403894b92eb9584958af36 | |
Author: Josuah Demangeon <[email protected]> | |
Date: Wed, 7 Sep 2022 12:37:18 +0200 | |
fix the documentation | |
Add missing manpages, update README, document the format now being TSV. | |
Diffstat: | |
M README.md | 68 +++++++++++++++++++++++++++--… | |
M font8.c | 24 +++++++++++++++++++++++- | |
A ploot-braille.1 | 87 +++++++++++++++++++++++++++++… | |
M ploot-farbfeld.1 | 50 ++++++++++++++---------------… | |
M ploot-feed.1 | 26 ++++++++++++++++---------- | |
M ploot-tsv.5 | 28 +++++++++++++++++----------- | |
6 files changed, 225 insertions(+), 58 deletions(-) | |
--- | |
diff --git a/README.md b/README.md | |
@@ -1,18 +1,57 @@ | |
ploot | |
===== | |
+A collection of utilities plotting TSV data or text in various ways. | |
-ploot-ffplot | |
+ploot-text | |
+---------- | |
+A small tool for plotting ASCII text with braille characters. | |
+Two font sizes available. | |
+ | |
+``` | |
+$ ploot-text -1 "$(date)" | |
+⡇⡀⡇⣠⣤⢀⠤⡇⠀⠐⢍⠁⣠⣤⢠⠤⡀⠀⠀⠀⠉⡝⠀⠀⢺⠀… | |
+⠑⠑⠁⠑⠒⠈⠒⠃⠀⠐⠒⠁⠑⠒⢸⠒⠁⠀⠀⠀⠘⠀⠀⠀⠚⠂… | |
+$ ploot-text -2 "$(date)" | |
+⠀⠀⠀⠀⠀⠀⠀⠀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀… | |
+⡇⠀⡇⡠⠤⡀⡠⠤⡇⠀⠀⠀⡎⠉⠂⡠⠤⡀⡤⠤⡀⠀⠀⠀⠀⠀… | |
+⣧⢣⡇⡗⠒⠃⡇⠀⡇⠀⠀⠀⡈⠉⡆⡗⠒⠃⡇⠀⡇⠀⠀⠀⠀⠀… | |
+⠁⠀⠁⠈⠉⠀⠈⠉⠁⠀⠀⠀⠈⠉⠀⠈⠉⠀⡏⠉⠀⠀⠀⠀⠀⠀… | |
+``` | |
+ | |
+[1]: https://github.com/asciimoo/drawille | |
+ | |
+ploot-braille | |
-------------- | |
-*ploot-ffplot* reads collectd-style comma separated values (TSV) and produces … | |
-in the ffplot [1] image format (pipe it to ff2png). It is an alternative to | |
-RRDtool [2]. | |
+*ploot-braille* reads tab separated values (TSV) and produces a plot | |
+in the drawille [1] text/image format. It is an alternative to gnuplot [2] | |
+in text mode. | |
It is targetting at generating monitoring graph, and it always read unix | |
timestamp as first column on standard input. The first line determines the | |
-name of the curves. | |
+name of the plots, all aligned vertically. | |
-[1]: https://tools.suckless.org/ffplot/ | |
-[2]: https://oss.oetiker.ch/rrdtool/ | |
+``` | |
+$ ploot-braille <load-average.tsv | |
+ shortterm | |
+⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀… | |
+⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀… | |
+⠀⠀⠀⠀⠀⠀⡀⠀⡀⠀⡀⠀⢀⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀… | |
+⠀⠚⠛⠓⠛⠛⠓⠚⠓⠚⠛⠓⠛⠛⠓⠓⠛⠛⠛⠛⠓⠒⠒⠒⠚⠛… | |
+ midterm | |
+⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀… | |
+⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀… | |
+⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⠀… | |
+⠀⠛⠛⠛⠛⠛⠓⠚⠓⠒⠛⠛⠓⠛⠓⠓⠛⠛⠛⠛⠓⠒⠒⠒⠛⠛… | |
+ longterm | |
+⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀… | |
+⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀… | |
+⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⠀… | |
+⠀⠒⠛⠛⠛⠛⠒⠚⠓⠒⠛⠛⠛⠛⠛⠛⠛⠛⠛⠛⠓⠒⠒⠒⠛⠛… | |
+ ^00:00:00 ^10:00:00 ^20:00:00 | |
+``` | |
+ | |
+[1]: https://github.com/asciimoo/drawille | |
+[2]: http://www.gnuplot.info/ | |
ploot-feed | |
---------- | |
@@ -21,7 +60,7 @@ a plain text continuous waterfall chart for live monitoring i… | |
is an alternative to grafana [1]. | |
``` | |
-% plootxt 1 1 1 <load-average.tsv | |
+$ ploot-feed 1 1 1 <load-average.tsv | |
│shortterm │midterm │longterm … | |
17:34:00 _│⣦⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀│�… | |
18/05/01 │⣟⡁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀│�… | |
@@ -55,3 +94,16 @@ is an alternative to grafana [1]. | |
``` | |
[1]: https://grafana.com/ | |
+ | |
+ploot-farbfeld | |
+-------------- | |
+*ploot-farbfeld* reads tab separated values (TSV) and produces a plot | |
+in the farbfeld [1] image format (pipe it to ff2png). It is an alternative to | |
+RRDtool [2] and other simple time series plotting tools. | |
+ | |
+It is targetting at generating monitoring graph, and it always read unix | |
+timestamp as first column on standard input. The first line determines the | |
+name of the curves. | |
+ | |
+[1]: https://tools.suckless.org/farbfeld/ | |
+[2]: https://oss.oetiker.ch/rrdtool/ | |
diff --git a/font8.c b/font8.c | |
@@ -927,6 +927,28 @@ C(underscore) = { | |
_,_,_, | |
0}; | |
+C(column) = { | |
+ _,_,_, | |
+ _,_,_, | |
+ _,X,_, | |
+ _,_,_, | |
+ _,_,_, | |
+ _,X,_, | |
+ _,_,_, | |
+ _,_,_, | |
+0}; | |
+ | |
+C(semicolumn) = { | |
+ _,_,_, | |
+ _,_,_, | |
+ _,X,_, | |
+ _,_,_, | |
+ _,_,_, | |
+ _,X,_, | |
+ _,X,_, | |
+ X,_,_, | |
+0}; | |
+ | |
struct font font8 = { 8, { | |
glyph_error, glyph_error, glyph_error, glyph_erro… | |
glyph_error, glyph_error, glyph_error, glyph_erro… | |
@@ -942,7 +964,7 @@ struct font font8 = { 8, { | |
glyph_coma, glyph_minus, glyph_dot, glyph_slash, | |
glyph_0, glyph_1, glyph_2, glyph_3, | |
glyph_4, glyph_5, glyph_6, glyph_7, | |
- glyph_8, glyph_9, glyph_error, glyph_error, | |
+ glyph_8, glyph_9, glyph_column, glyph_semicolumn, | |
glyph_error, glyph_error, glyph_error, glyph_erro… | |
glyph_error, glyph_A, glyph_B, glyph_C, | |
glyph_D, glyph_E, glyph_F, glyph_G, | |
diff --git a/ploot-braille.1 b/ploot-braille.1 | |
@@ -0,0 +1,87 @@ | |
+.Dd $Mdocdate: August 08 2018$ | |
+.Dt PLOOT-BRAILLE 1 | |
+.Os | |
+. | |
+. | |
+.Sh NAME | |
+. | |
+.Nm ploot-braille | |
+.Nd produce a drawille image of tsv input | |
+. | |
+. | |
+.Sh SYNOPSIS | |
+. | |
+.Nm ploot-braille | |
+.Op Fl r Ar rows | |
+.Op Fl c Ar cols | |
+. | |
+. | |
+.Sh DESCRIPTION | |
+. | |
+The | |
+.Nm | |
+utility plots tsv values coming from stdin into a text-based 2d plot out of br… | |
+This is the same technique used by the drawille set of programs. | |
+. | |
+.Bl -tag -width 6n | |
+. | |
+.It Fl c Ar cols | |
+Set the total number of columns the output should have. | |
+. | |
+.It Fl r Ar rows | |
+Set the number of rows per chart to display. | |
+. | |
+.El | |
+. | |
+.Pp | |
+The input format is documented in the | |
+.Xr ploot-tsv 7 | |
+manual page. | |
+. | |
+. | |
+.Sh EXIT STATUS | |
+.Ex -std | |
+. | |
+. | |
+.Sh EXAMPLES | |
+. | |
+.Bd -literal -offset indent | |
+$ cat <<EOF >sample.txt | |
+epoch used_memory free_memory | |
+1533752053 160 401 | |
+1533752054 180 381 | |
+1533752055 301 260 | |
+1533752056 303 258 | |
+EOF | |
+$ ploot-braille <sample.txt | |
+.Ed | |
+. | |
+. | |
+.Sh SEE ALSO | |
+. | |
+.Xr ploot-braille 1 , | |
+.Xr ploot-tsv 7 | |
+. | |
+.Pp | |
+The | |
+.Xr braille 7 | |
+image format: | |
+.Lk https://tools.suckless.org/braille/ | |
+. | |
+. | |
+.Sh HISTORY | |
+. | |
+.Nm | |
+is developped at | |
+.Bl -ohang | |
+.It | |
+.Lk gopher://bitreich.org/1/scm/ploot/ "Bitreich project index" | |
+.It | |
+.Lk git://bitreich.org/1/ploot/ "Bitreich public repo" | |
+.El | |
+. | |
+. | |
+.Sh AUTHORS | |
+. | |
+.An Josuah Demangeon | |
+.Aq Mt [email protected] | |
diff --git a/ploot-farbfeld.1 b/ploot-farbfeld.1 | |
@@ -1,17 +1,17 @@ | |
.Dd $Mdocdate: August 08 2018$ | |
-.Dt PLOOT-FF 1 | |
+.Dt PLOOT-FARBFELD 1 | |
.Os | |
. | |
. | |
.Sh NAME | |
. | |
-.Nm ploot-ffplot | |
-.Nd produce a ffplot image of tsv input | |
+.Nm ploot-farbfeld | |
+.Nd produce a farbfeld image of tsv input | |
. | |
. | |
.Sh SYNOPSIS | |
. | |
-.Nm ploot-ffplot | |
+.Nm ploot-farbfeld | |
.Op Fl t Ar title | |
.Ar colors... | |
. | |
@@ -20,7 +20,7 @@ | |
. | |
The | |
.Nm | |
-utility plots an image in the ffplot format out of tsv values coming from stdi… | |
+utility plots an image in the farbfeld format out of tsv values coming from st… | |
. | |
.Bl -tag -width 6n | |
. | |
@@ -49,26 +49,26 @@ manual page. | |
. | |
.Bd -literal -offset indent | |
$ cat <<EOF >sample.txt | |
-epoch,used_memory,free_memory | |
-1533752053,160,401 | |
-1533752054,180,381 | |
-1533752055,301,260 | |
-1533752056,303,258 | |
+epoch used_memory free_memory | |
+1533752053 160 401 | |
+1533752054 180 381 | |
+1533752055 301 260 | |
+1533752056 303 258 | |
EOF | |
-$ ploot-ffplot -t demo -u MB red yellow <sample.txt | |
+$ ploot-farbfeld -t demo -u MB red yellow <sample.txt | |
.Ed | |
. | |
. | |
.Sh SEE ALSO | |
. | |
-.Xr ploot-ffplot 1 , | |
+.Xr ploot-farbfeld 1 , | |
.Xr ploot-tsv 7 | |
. | |
.Pp | |
The | |
-.Xr ffplot 7 | |
+.Xr farbfeld 7 | |
image format: | |
-.Lk https://tools.suckless.org/ffplot/ | |
+.Lk https://tools.suckless.org/farbfeld/ | |
. | |
. | |
.Sh HISTORY | |
@@ -78,22 +78,16 @@ earned its author a bitreich.org medal of misspelled progra… | |
. | |
.Pp | |
.Nm | |
-was written at | |
-.Lk gopher://bitreich.org/1/scm/ploot/ "Bitreich" | |
+is developped at | |
+.Bl -ohang | |
+.It | |
+.Lk gopher://bitreich.org/1/scm/ploot/ "Bitreich project index" | |
+.It | |
+.Lk git://bitreich.org/1/ploot/ "Bitreich public repo" | |
+.El | |
. | |
. | |
.Sh AUTHORS | |
. | |
.An Josuah Demangeon | |
-.Aq Mt [email protected] | |
-. | |
-. | |
-.Sh BUGS | |
-. | |
-.Nm | |
-does not make any math on the input: if the timestamps are not at regular | |
-interval, ploot will still print one output line every 4 lines read, | |
-regardless of the time interval. | |
-. | |
-.Pp | |
-However, the timestamp printed on the left is always exact. | |
+.Aq Mt [email protected] | |
diff --git a/ploot-feed.1 b/ploot-feed.1 | |
@@ -48,11 +48,11 @@ manual page. | |
. | |
.Bd -literal -offset indent | |
$ cat <<EOF >sample.txt | |
-epoch,free_memory,process_count | |
-1533752053,16.3,45 | |
-1533752054,18.7,42 | |
-1533752055,40.1,39 | |
-1533752056,40.1,39 | |
+epoch free_memory process_count | |
+1533752053 16.3 45 | |
+1533752054 18.7 42 | |
+1533752055 40.1 39 | |
+1533752056 40.1 39 | |
EOF | |
$ ploot-feed -w 80 1 1 <sample.txt | |
.Ed | |
@@ -60,8 +60,9 @@ $ ploot-feed -w 80 1 1 <sample.txt | |
. | |
.Sh SEE ALSO | |
. | |
-.Xr ploot-ffplot 1 , | |
-.Xr ploot-format 7 | |
+.Xr ploot-farbfeld 1 , | |
+.Xr ploot-braille 1 , | |
+.Xr ploot-tsv 5 | |
. | |
. | |
.Sh HISTORY | |
@@ -71,14 +72,19 @@ earned its author a bitreich.org medal of misspelled progra… | |
. | |
.Pp | |
.Nm | |
-was written at | |
-.Lk gopher://bitreich.org/1/scm/ploot/ "Bitreich" | |
+is developped at | |
+.Bl -ohang | |
+.It | |
+.Lk gopher://bitreich.org/1/scm/ploot/ "Bitreich project index" | |
+.It | |
+.Lk git://bitreich.org/1/ploot/ "Bitreich public repo" | |
+.El | |
. | |
. | |
.Sh AUTHORS | |
. | |
.An Josuah Demangeon | |
-.Aq Mt [email protected] | |
+.Aq Mt [email protected] | |
. | |
. | |
.Sh BUGS | |
diff --git a/ploot-tsv.5 b/ploot-tsv.5 | |
@@ -12,9 +12,9 @@ | |
.Sh SYNOPSIS | |
. | |
.Bd -literal | |
-epoch,column-name-1,column-name-2 | |
-timestamp,value1,value2 | |
-timestamp,value1,value2 | |
+epoch column-name-1 column-name-2 | |
+timestamp value1 value2 | |
+timestamp value1 value2 | |
\&... | |
.Ed | |
. | |
@@ -39,7 +39,7 @@ The first column is always | |
Then there are the actual column names. | |
. | |
.Bd -literal -offset indent | |
-epoch,free_memory,process_count | |
+epoch free_memory process_count | |
.Ed | |
. | |
. | |
@@ -52,23 +52,29 @@ The remaining columns are values parsed as floating point n… | |
.Xr strtod 3 : | |
. | |
.Bd -literal -offset indent | |
-1533752053,16.3,45 | |
-1533752054,18.7,42 | |
-1533752055,40.1,39 | |
-1533752056,40.1,39 | |
+1533752053 16.3 45 | |
+1533752054 18.7 42 | |
+1533752055 40.1 39 | |
+1533752056 40.1 39 | |
.Ed | |
. | |
. | |
.Sh SEE ALSO | |
. | |
+.Xr ploot-braille 1 , | |
+.Xr ploot-farbfeld 1 , | |
.Xr ploot-feed 1 , | |
-.Xr ploot-farbfeld 1 | |
. | |
.Sh HISTORY | |
. | |
.Nm | |
-was defined at | |
-.Lk gopher://bitreich.org/1/scm/ploot/ "Bitreich" | |
+is developped at | |
+.Bl -ohang | |
+.It | |
+.Lk gopher://bitreich.org/1/scm/ploot/ "Bitreich project index" | |
+.It | |
+.Lk git://bitreich.org/1/ploot/ "Bitreich public repo" | |
+.El | |
. | |
. | |
.Sh AUTHORS |