# class Tk::Tcllib::Plotchart::Barchart

### Constants

TkCommandNames

### Public Class Methods

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

    # File lib/tkextlib/tcllib/plotchart.rb, line 1000
    def initialize(*args)
      # args := ([parent,] xlabels, ylabels [, series] [, keys])
      # xlabels, ylabels := labels | axis ( depend on normal or horizontal )
      # labels := Array of [label, label, ...]
      #   (It determines the number of bars that will be plotted per series.)
      # axis := Array of [minimum, maximum, stepsize]
      # series := Integer number of data series | 'stacked' | :stacked
      if args[0].kind_of?(Array)
        @xlabels = args.shift
        @ylabels  = args.shift

        if args[0].kind_of?(Hash)
          @series_size = :stacked
        else
          @series_size  = args.shift
        end

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

        @xlabels = args.shift
        @ylabels = args.shift

        if args[0].kind_of?(Hash)
          @series_size = :stacked
        else
          @series_size  = args.shift
        end

        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 1048
    def __destroy_hook__
      Tk::Tcllib::Plotchart::PlotSeries::SeriesID_TBL.mutex.synchronize{
        Tk::Tcllib::Plotchart::PlotSeries::SeriesID_TBL.delete(@path)
      }
    end

color(*cols)
Alias for: colours
colors(*cols)
Alias for: colours
colour(*cols)
Alias for: colours
colours(*cols) click to toggle source

    # File lib/tkextlib/tcllib/plotchart.rb, line 1059
    def colours(*cols)
      # set the colours to be used
      tk_call(@chart, 'colours', *cols)
      self
    end

Also aliased as: colour, colors, color
plot(series, dat, col=None) click to toggle source

    # File lib/tkextlib/tcllib/plotchart.rb, line 1054
    def plot(series, dat, col=None)
      tk_call(@chart, 'plot', series, dat, col)
      self
    end

### Private Instance Methods

_create_chart() click to toggle source

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