Class: AlGraph::Axis

Inherits:
GraphBase show all
Defined in:
lib/al_graph.rb

Overview

座標軸スーパークラス

Direct Known Subclasses

XAxis, YAxis

Constant Summary

Constant Summary

Constants inherited from GraphBase

GraphBase::ATTR_NAMES, GraphBase::ATTR_UNITS

Instance Attribute Summary (collapse)

Attributes inherited from GraphBase

#height, #output, #width

Instance Method Summary (collapse)

Constructor Details

- (Axis) initialize(width, height, output)

constructor

Parameters:

  • width (Integer)

  • height (Integer)

    高さ

  • output (GraphOutput)

    出力制御オブジェクト



40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
# File 'lib/al_graph.rb', line 40

def initialize(width, height, output)
  super
  # 軸アトリビュート
  @at_scale_line = {:stroke => 'black', :stroke_width => 1}
  # 目盛アトリビュート
  @at_interval_marks = 
    {:length => 8, :stroke => '#999999', :stroke_width =>1}
  # 目盛ラベルアトリビュート
  @at_labels = {:font_size => 10}
  # 目盛ラベル(配列)
  @labels = []

  @scale_max = nil          # 目盛り最大値
  @scale_min = nil          # 目盛り最小値
  @scale_interval = nil     # 目盛り幅
  @scale_max_user = nil       # ユーザ設定目盛り最大値
  @scale_min_user = nil       # ユーザ設定目盛り最小値
  @scale_interval_user = nil  # ユーザ設定目盛り幅
  @scale_max_min_width= nil   # 最大値-最小値のキャッシュ
  @flag_reverse = false     # 目盛り逆方向(反転)フラグ
end

Instance Attribute Details

- (Hash) at_interval_marks

Returns 目盛アトリビュート

Returns:

  • (Hash)

    目盛アトリビュート



25
26
27
# File 'lib/al_graph.rb', line 25

def at_interval_marks
  @at_interval_marks
end

- (Hash) at_labels

Returns 目盛ラベルアトリビュート

Returns:

  • (Hash)

    目盛ラベルアトリビュート



28
29
30
# File 'lib/al_graph.rb', line 28

def at_labels
  @at_labels
end

- (Hash) at_scale_line

Returns 軸アトリビュート

Returns:

  • (Hash)

    軸アトリビュート



22
23
24
# File 'lib/al_graph.rb', line 22

def at_scale_line
  @at_scale_line
end

- (Hash) labels

Returns 目盛ラベル

Returns:

  • (Hash)

    目盛ラベル



31
32
33
# File 'lib/al_graph.rb', line 31

def labels
  @labels
end

Instance Method Details

- (Object) add_grid

グリッド線の付与



122
123
124
# File 'lib/al_graph.rb', line 122

def add_grid()
  @at_interval_marks[:grid] = true
end

- (Object) clear_grid

グリッド線の消去



129
130
131
# File 'lib/al_graph.rb', line 129

def clear_grid()
  @at_interval_marks[:grid] = false
end

- (Object) clear_interval_marks

間隔マークの消去



143
144
145
# File 'lib/al_graph.rb', line 143

def clear_interval_marks()
  @at_interval_marks.clear
end

- (Object) clear_labels

軸ラベルの消去



156
157
158
# File 'lib/al_graph.rb', line 156

def clear_labels()
 @at_labels.clear
end

- (Object) clear_scale_line

軸線の消去



136
137
138
# File 'lib/al_graph.rb', line 136

def clear_scale_line()
  @at_scale_line.clear
end

- (Numeric) max

目盛り最大値を取得する

Returns:

  • (Numeric)

    現在の目盛り最大値



77
78
79
# File 'lib/al_graph.rb', line 77

def max()
  @scale_max
end

- (Numeric) min

目盛り最小値を取得する

Returns:

  • (Numeric)

    現在の目盛り最小値



96
97
98
# File 'lib/al_graph.rb', line 96

def min()
  @scale_min
end

- (Object) reverse(f = true)

目盛り逆方向(反転)指示

Parameters:

  • f (defaults to: true)

    true時、目盛りを反転させる



115
116
117
# File 'lib/al_graph.rb', line 115

def reverse(f = true)
  @flag_reverse = f
end

- (Object) set_interval(v) Also known as: interval=

目盛り幅のユーザ指定

Parameters:

  • v (Numeric)

    目盛り幅



105
106
107
# File 'lib/al_graph.rb', line 105

def set_interval(v)
  @scale_interval_user = v
end

- (Object) set_labels(labels)

軸ラベルの設定



149
150
151
# File 'lib/al_graph.rb', line 149

def set_labels(labels)
  @labels = labels
end

- (Object) set_max(v) Also known as: max=

目盛り最大値のユーザ指定

Parameters:

  • v (Numeric)

    目盛り最大値



67
68
69
# File 'lib/al_graph.rb', line 67

def set_max(v)
  @scale_max_user = v
end

- (Object) set_min(v) Also known as: min=

目盛り最小値のユーザ指定

Parameters:

  • v (Numeric)

    目盛り最小値



86
87
88
# File 'lib/al_graph.rb', line 86

def set_min(v)
  @scale_min_user = v
end