SMOLNET PORTAL home about changes
imake plotting work with arbitrary scale - ploot - simple plotting tools	Err	bitreich.org	70
hgit clone git://bitreich.org/ploot git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/ploot	URL:git://bitreich.org/ploot git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/ploot	bitreich.org	70
1Log	/scm/ploot/log.gph	bitreich.org	70
1Files	/scm/ploot/files.gph	bitreich.org	70
1Refs	/scm/ploot/refs.gph	bitreich.org	70
1Tags	/scm/ploot/tag	bitreich.org	70
1README	/scm/ploot/file/README.md.gph	bitreich.org	70
1LICENSE	/scm/ploot/file/LICENSE.gph	bitreich.org	70
i---	Err	bitreich.org	70
1commit d97badd46c19a6903a589c41b8b87d044f48f8dc	/scm/ploot/commit/d97badd46c19a6903a589c41b8b87d044f48f8dc.gph	bitreich.org	70
1parent c9c242228362e465b83fc106675981fd45419228	/scm/ploot/commit/c9c242228362e465b83fc106675981fd45419228.gph	bitreich.org	70
hAuthor: Josuah Demangeon <mail@josuah.net>	URL:mailto:mail@josuah.net	bitreich.org	70
iDate:   Wed,  2 May 2018 05:46:29 +0200	Err	bitreich.org	70
i	Err	bitreich.org	70
imake plotting work with arbitrary scale	Err	bitreich.org	70
i	Err	bitreich.org	70
iDiffstat:	Err	bitreich.org	70
i  M ffplot.c                            |       2 +-	Err	bitreich.org	70
i  M main.c                              |      30 +++++++++++++++++++++---------	Err	bitreich.org	70
i	Err	bitreich.org	70
i2 files changed, 22 insertions(+), 10 deletions(-)	Err	bitreich.org	70
i---	Err	bitreich.org	70
1diff --git a/ffplot.c b/ffplot.c	/scm/ploot/file/ffplot.c.gph	bitreich.org	70
i@@ -159,7 +159,7 @@ graph(Canvas *can, Vlist *v,	Err	bitreich.org	70
i         int x, y, n, xlast, ylast, first;	Err	bitreich.org	70
i 	Err	bitreich.org	70
i         first = 1;	Err	bitreich.org	70
i-        for (tp = v->t, vp = v->v, n = v->n; n-- > 0; n--, vp++, tp++) {	Err	bitreich.org	70
i+        for (tp = v->t, vp = v->v, n = v->n; n > 0; n--, vp++, tp++) {	Err	bitreich.org	70
i                 x = v2x(*vp, vmin, vmax);	Err	bitreich.org	70
i                 y = t2y(*tp, tmin, tmax);	Err	bitreich.org	70
i 	Err	bitreich.org	70
1diff --git a/main.c b/main.c	/scm/ploot/file/main.c.gph	bitreich.org	70
i@@ -66,6 +66,17 @@ read_labels(Vlist *v, char **argv, char *buf)	Err	bitreich.org	70
i                 fputs("more columns than arguments\n", stderr), exit(1);	Err	bitreich.org	70
i }	Err	bitreich.org	70
i 	Err	bitreich.org	70
i+double	Err	bitreich.org	70
i+eatof(char *str)	Err	bitreich.org	70
i+{	Err	bitreich.org	70
i+        char *s;	Err	bitreich.org	70
i+	Err	bitreich.org	70
i+        for (s = str; *s != '\0'; s++)	Err	bitreich.org	70
i+                if (!isdigit(*s) && *s != '.')	Err	bitreich.org	70
i+                        fputs("invalid floatrformat", stderr), exit(0);	Err	bitreich.org	70
i+        return atof(str);	Err	bitreich.org	70
i+}	Err	bitreich.org	70
i+	Err	bitreich.org	70
i long	Err	bitreich.org	70
i eatol(char *str)	Err	bitreich.org	70
i {	Err	bitreich.org	70
i@@ -78,22 +89,25 @@ eatol(char *str)	Err	bitreich.org	70
i }	Err	bitreich.org	70
i 	Err	bitreich.org	70
i void	Err	bitreich.org	70
i-add_value(Vlist *v, int *bufsiz, int nval, char *field)	Err	bitreich.org	70
i+add_val(Vlist *v, int *bufsiz, int nval, double field, time_t epoch)	Err	bitreich.org	70
i {	Err	bitreich.org	70
i         if (nval >= *bufsiz) {	Err	bitreich.org	70
i                 *bufsiz = *bufsiz * 2 + 1;	Err	bitreich.org	70
i-                if ((v->v = realloc(v->v, *bufsiz)) == NULL)	Err	bitreich.org	70
i+                if ((v->v = realloc(v->v, *bufsiz * sizeof(*v->v))) == NULL)	Err	bitreich.org	70
i+                        perror("reallocating values buffer"), exit(1);	Err	bitreich.org	70
i+                if ((v->t = realloc(v->t, *bufsiz * sizeof(*v->t))) == NULL)	Err	bitreich.org	70
i                         perror("reallocating values buffer"), exit(1);	Err	bitreich.org	70
i         }	Err	bitreich.org	70
i-        v->v[nval] = eatol(field);	Err	bitreich.org	70
i-        v->n = nval;	Err	bitreich.org	70
i+        v->v[nval] = field;	Err	bitreich.org	70
i+        v->t[nval] = epoch;	Err	bitreich.org	70
i+        v->n = nval + 1;	Err	bitreich.org	70
i }	Err	bitreich.org	70
i 	Err	bitreich.org	70
i /*	Err	bitreich.org	70
i  * Add to each column the value on the current row.	Err	bitreich.org	70
i  */	Err	bitreich.org	70
i void	Err	bitreich.org	70
i-add_each_value(Vlist *v, int *bufsiz, int ncol, int nval, char *line)	Err	bitreich.org	70
i+add_row(Vlist *v, int *bufsiz, int ncol, int nval, char *line)	Err	bitreich.org	70
i {	Err	bitreich.org	70
i         time_t epoch;	Err	bitreich.org	70
i         int n;	Err	bitreich.org	70
i@@ -103,11 +117,10 @@ add_each_value(Vlist *v, int *bufsiz, int ncol, int nval, char *line)	Err	bitreich.org	70
i                 fprintf(stderr, "%d: missing epoch\n", nval), exit(0);	Err	bitreich.org	70
i 	Err	bitreich.org	70
i         epoch = eatol(field);	Err	bitreich.org	70
i-	Err	bitreich.org	70
i         for (n = 0; (field = strsep(&line, ",")) != NULL; n++, v++) {	Err	bitreich.org	70
i                 if (n > ncol)	Err	bitreich.org	70
i                         fprintf(stderr, "%d: too many fields\n", nval), exit(0);	Err	bitreich.org	70
i-                add_value(v, bufsiz, nval, field);	Err	bitreich.org	70
i+                add_val(v, bufsiz, nval, eatof(field), epoch);	Err	bitreich.org	70
i         }	Err	bitreich.org	70
i         if (n < ncol)	Err	bitreich.org	70
i                 fprintf(stderr, "%d: too few fields\n", nval), exit(0);	Err	bitreich.org	70
i@@ -128,9 +141,8 @@ read_values(Vlist *v, int ncol)	Err	bitreich.org	70
i         bufsiz = 0;	Err	bitreich.org	70
i         for (nval = 0; fgets(line, sizeof(line), stdin); nval++) {	Err	bitreich.org	70
i                 estriplf(line);	Err	bitreich.org	70
i-                add_each_value(v, &bufsiz, ncol, nval, line);	Err	bitreich.org	70
i+                add_row(v, &bufsiz, ncol, nval, line);	Err	bitreich.org	70
i         }	Err	bitreich.org	70
i-        fprintf(stderr, "nval: %d, bufsiz: %d\n", nval, bufsiz), fflush(stderr);	Err	bitreich.org	70
i }	Err	bitreich.org	70
i 	Err	bitreich.org	70
i static void	Err	bitreich.org	70
.
Response: text/plain
Original URLgopher://bitreich.org/0/scm/ploot/commit/d97badd46c19a690...
Content-Typetext/plain; charset=utf-8