# class Tk::Tcllib::Plotchart::XYPlot

### Constants

TkCommandNames

### Public Class Methods

new(*args) click to toggle source
Calls superclass method

    # File lib/tkextlib/tcllib/plotchart.rb, line 338
    def initialize(*args) # args := ([parent,] xaxis, yaxis [, keys])
                          # xaxis := Array of [minimum, maximum, stepsize]
                          # yaxis := Array of [minimum, maximum, stepsize]
      if args[0].kind_of?(Array)
        @xaxis = args.shift
        @yaxis = args.shift

        super(*args) # create canvas widget
      else
        parent = args.shift

        @xaxis = args.shift
        @yaxis = args.shift

        if parent.kind_of?(Tk::Canvas)
          @path = parent.path
        else
          super(parent, *args) # create canvas widget
        end
      end

      @chart = _create_chart
    end

### Public Instance Methods

__destroy_hook__() click to toggle source

    # File lib/tkextlib/tcllib/plotchart.rb, line 369
    def __destroy_hook__
      Tk::Tcllib::Plotchart::PlotSeries::SeriesID_TBL.mutex.synchronize{
        Tk::Tcllib::Plotchart::PlotSeries::SeriesID_TBL.delete(@path)
      }
    end

box_and_whiskers(series, xcrd, ycrd) click to toggle source

    # File lib/tkextlib/tcllib/plotchart.rb, line 455
    def box_and_whiskers(series, xcrd, ycrd)
      tk_call_without_enc(@chart, 'box-and-whiskers',
                          _get_eval_enc_str(series), xcrd, ycrd)
      self
    end

Also aliased as: box_whiskers
box_whiskers(series, xcrd, ycrd)
Alias for: box_and_whiskers
color_map(colors) click to toggle source

    # File lib/tkextlib/tcllib/plotchart.rb, line 410
    def color_map(colors)
      colors = array2tk_list(colors) if colors.kind_of?(Array)

      tk_call_without_enc(@chart, 'colorMap', colors)
      self
    end

contourbox(xcrd, ycrd, vals, clss=None) click to toggle source

    # File lib/tkextlib/tcllib/plotchart.rb, line 400
    def contourbox(xcrd, ycrd, vals, clss=None)
      xcrd = array2tk_list(xcrd) if xcrd.kind_of?(Array)
      ycrd = array2tk_list(ycrd) if ycrd.kind_of?(Array)
      vals = array2tk_list(vals) if vals.kind_of?(Array)
      clss = array2tk_list(clss) if clss.kind_of?(Array)

      tk_call(@chart, 'contourbox', xcrd, ycrd, vals, clss)
      self
    end

contourfill(xcrd, ycrd, vals, clss=None) click to toggle source

    # File lib/tkextlib/tcllib/plotchart.rb, line 390
    def contourfill(xcrd, ycrd, vals, clss=None)
      xcrd = array2tk_list(xcrd) if xcrd.kind_of?(Array)
      ycrd = array2tk_list(ycrd) if ycrd.kind_of?(Array)
      vals = array2tk_list(vals) if vals.kind_of?(Array)
      clss = array2tk_list(clss) if clss.kind_of?(Array)

      tk_call(@chart, 'contourfill', xcrd, ycrd, vals, clss)
      self
    end

contourlines(xcrd, ycrd, vals, clss=None) click to toggle source

    # File lib/tkextlib/tcllib/plotchart.rb, line 380
    def contourlines(xcrd, ycrd, vals, clss=None)
      xcrd = array2tk_list(xcrd) if xcrd.kind_of?(Array)
      ycrd = array2tk_list(ycrd) if ycrd.kind_of?(Array)
      vals = array2tk_list(vals) if vals.kind_of?(Array)
      clss = array2tk_list(clss) if clss.kind_of?(Array)

      tk_call(@chart, 'contourlines', xcrd, ycrd, vals, clss)
      self
    end

dataconfig(series, key, value=None) click to toggle source

    # File lib/tkextlib/tcllib/plotchart.rb, line 425
    def dataconfig(series, key, value=None)
      if key.kind_of?(Hash)
        tk_call_without_enc(@chart, 'dataconfig', series, *hash_kv(key, true))
      else
        tk_call(@chart, 'dataconfig', series, "-#{key}", value)
      end
    end

dot(series, xcrd, ycrd, value) click to toggle source

    # File lib/tkextlib/tcllib/plotchart.rb, line 488
    def dot(series, xcrd, ycrd, value)
      tk_call_without_enc(@chart, 'dot', _get_eval_enc_str(series),
                          xcrd, ycrd, value)
      self
    end

dotconfig(series, key, value=None) click to toggle source

    # File lib/tkextlib/tcllib/plotchart.rb, line 478
    def dotconfig(series, key, value=None)
      if key.kind_of?(Hash)
        tk_call_without_enc(@chart, 'dotconfig',
                            _get_eval_enc_str(series), *hash_kv(key, true))
      else
        tk_call(@chart, 'dotconfig', series, "-#{key}", value)
      end
      self
    end

grid_cells(xcrd, ycrd) click to toggle source

    # File lib/tkextlib/tcllib/plotchart.rb, line 417
    def grid_cells(xcrd, ycrd)
      xcrd = array2tk_list(xcrd) if xcrd.kind_of?(Array)
      ycrd = array2tk_list(ycrd) if ycrd.kind_of?(Array)

      tk_call_without_enc(@chart, 'grid', xcrd, ycrd)
      self
    end

interval(series, xcrd, ymin, ymax, ycenter=None) click to toggle source

    # File lib/tkextlib/tcllib/plotchart.rb, line 450
    def interval(series, xcrd, ymin, ymax, ycenter=None)
      tk_call(@chart, 'interval', series, xcrd, ymin, ymax, ycenter)
      self
    end

plot(series, x, y) click to toggle source

    # File lib/tkextlib/tcllib/plotchart.rb, line 375
    def plot(series, x, y)
      tk_call_without_enc(@chart, 'plot', _get_eval_enc_str(series), x, y)
      self
    end

rchart(series, xcrd, ycrd) click to toggle source

    # File lib/tkextlib/tcllib/plotchart.rb, line 444
    def rchart(series, xcrd, ycrd)
      tk_call_without_enc(@chart, 'rchart',
                          _get_eval_enc_str(series), xcrd, ycrd)
      self
    end

rescale(xscale, yscale) click to toggle source

    # File lib/tkextlib/tcllib/plotchart.rb, line 433
    def rescale(xscale, yscale) # xscale|yscale => [newmin, newmax, newstep]
      tk_call_without_enc(@chart, 'rescale', xscale, yscale)
      self
    end

trend(series, xcrd, ycrd) click to toggle source

    # File lib/tkextlib/tcllib/plotchart.rb, line 438
    def trend(series, xcrd, ycrd)
      tk_call_without_enc(@chart, 'trend',
                          _get_eval_enc_str(series), xcrd, ycrd)
      self
    end

vector(series, xcrd, ycrd, ucmp, vcmp) click to toggle source

    # File lib/tkextlib/tcllib/plotchart.rb, line 472
    def vector(series, xcrd, ycrd, ucmp, vcmp)
      tk_call_without_enc(@chart, 'vector', _get_eval_enc_str(series),
                          xcrd, ycrd, ucmp, vcmp)
      self
    end

vectorconfig(series, key, value=None) click to toggle source

    # File lib/tkextlib/tcllib/plotchart.rb, line 462
    def vectorconfig(series, key, value=None)
      if key.kind_of?(Hash)
        tk_call_without_enc(@chart, 'vectorconfig',
                            _get_eval_enc_str(series), *hash_kv(key, true))
      else
        tk_call(@chart, 'vectorconfig', series, "-#{key}", value)
      end
      self
    end

### Private Instance Methods

_create_chart() click to toggle source

    # File lib/tkextlib/tcllib/plotchart.rb, line 362
    def _create_chart
      p self.class::TkCommandNames[1] if $DEBUG
      tk_call_without_enc(self.class::TkCommandNames[1], @path,
                          array2tk_list(@xaxis), array2tk_list(@yaxis))
    end