File: __pl_store.m

package info (click to toggle)
plplot 5.15.0%2Bdfsg-19
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 31,312 kB
  • sloc: ansic: 79,707; xml: 28,583; cpp: 20,033; ada: 19,456; tcl: 12,081; f90: 11,431; ml: 7,276; java: 6,863; python: 6,792; sh: 3,274; perl: 828; lisp: 75; makefile: 50; sed: 34; fortran: 5
file content (53 lines) | stat: -rw-r--r-- 1,515 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
## Copyright (C) 1998-2003 Joao Cardoso.
##
## This program is free software; you can redistribute it and/or modify it
## under the terms of the GNU General Public License as published by the
## Free Software Foundation; either version 2 of the License, or (at your
## option) any later version.
##
## This program is distributed in the hope that it will be useful, but
## WITHOUT ANY WARRANTY; without even the implied warranty of
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
## General Public License for more details.
##
## This file is part of plplot_octave.

function __pl_store(x, y, fmt)

  global __pl
  strm = __pl_init;

  if (!struct_contains(__pl, "items"))
    __pl.items(strm) = 1;
  endif

  items = __pl.items(strm);

  ## find the max/min x/y values. Currently reset at __plt__
  ## for log plots use only positive values

  if (__pl.type(strm) == 10 || __pl.type(strm) == 30)
    minx = min(min(x(x>0))); maxx = max(max(x(x>0)));
  else
    minx = min(min(x)); maxx = max(max(x));
  endif

  if (__pl.type(strm) == 20 || __pl.type(strm) == 30)
    miny = min(min(y(y>0))); maxy = max(max(y(y>0)));
  else
    miny = min(min(y)); maxy = max(max(y));
  endif

  __pl.lxm(strm) = min([__pl.lxm(strm), minx]);
  __pl.lxM(strm) = max([__pl.lxM(strm), maxx]);

  __pl.lym(strm) = min([__pl.lym(strm), miny]);
  __pl.lyM(strm) = max([__pl.lyM(strm), maxy]);

  __pl.x{items, strm} = x;
  __pl.y{items, strm} = y;
  __pl.fmt{items, strm} = fmt;

  __pl.items(strm)++;

endfunction