Class: Gruff::Scatter
Overview
Constant Summary
Constants inherited from Base
Base::DEFAULT_MARGIN, Base::DEFAULT_TARGET_WIDTH, Base::LABEL_MARGIN, Base::LEGEND_MARGIN
Instance Attribute Summary collapse
-
#circle_radius ⇒ Object
writeonly
Attributes to allow customising the size of the points.
-
#disable_significant_rounding_x_axis ⇒ Object
writeonly
Allow disabling the significant rounding when labeling the X axis.
-
#marker_x_count ⇒ Object
writeonly
The number of vertical lines shown for reference.
-
#maximum_x_value ⇒ Object
writeonly
Maximum X Value.
-
#minimum_x_value ⇒ Object
writeonly
Minimum X Value.
-
#show_vertical_markers ⇒ Object
writeonly
Allow for vertical marker lines.
-
#stroke_width ⇒ Object
writeonly
Sets the attribute stroke_width.
-
#use_vertical_x_labels ⇒ Object
writeonly
Sets the attribute use_vertical_x_labels.
-
#x_label_margin ⇒ Object
writeonly
Allow using vertical labels in the X axis (and setting the label margin).
Attributes inherited from Base
#bottom_margin, #center_labels_over_point, #colors, #has_left_labels, #hide_legend, #hide_line_markers, #hide_line_numbers, #hide_title, #label_max_size, #label_stagger_height, #label_truncation_style, #labels, #left_margin, #legend_at_bottom, #legend_box_size, #legend_margin, #marker_color, #marker_shadow_color, #maximum_value, #minimum_value, #no_data_message, #right_margin, #sort, #sorted_drawing, #title, #title_margin, #top_margin, #x_axis_increment, #x_axis_label_format, #y_axis_increment, #y_axis_label_format
Instance Method Summary collapse
-
#data(name, x_data_points = [], y_data_points = [], color = nil) ⇒ Object
(also: #dataxy)
The first parameter is the name of the dataset.
-
#enable_vertical_line_markers=(value) ⇒ Object
deprecated
Deprecated.
Please use
show_vertical_markers
attribute instead.
Methods inherited from Base
#add_color, #bold_title=, #draw, #font=, #font_color=, #initialize, #legend_font_size=, #margins=, #marker_font_size=, #replace_colors, #theme=, #theme_37signals, #theme_greyscale, #theme_keynote, #theme_odeo, #theme_pastel, #theme_rails_keynote, #title_font=, #title_font_size=, #to_blob, #to_image, #write
Constructor Details
This class inherits a constructor from Gruff::Base
Instance Attribute Details
#circle_radius=(value) ⇒ Object (writeonly)
Attributes to allow customising the size of the points.
24 25 26 |
# File 'lib/gruff/scatter.rb', line 24 def circle_radius=(value) @circle_radius = value end |
#disable_significant_rounding_x_axis=(value) ⇒ Object (writeonly)
Allow disabling the significant rounding when labeling the X axis. This is useful when working with a small range of high values (for example, a date range of months, while seconds as units).
29 30 31 |
# File 'lib/gruff/scatter.rb', line 29 def disable_significant_rounding_x_axis=(value) @disable_significant_rounding_x_axis = value end |
#marker_x_count=(value) ⇒ Object (writeonly)
The number of vertical lines shown for reference.
21 22 23 |
# File 'lib/gruff/scatter.rb', line 21 def marker_x_count=(value) @marker_x_count = value end |
#maximum_x_value=(value) ⇒ Object (writeonly)
Maximum X Value. The value will get overwritten by the max in the datasets.
14 15 16 |
# File 'lib/gruff/scatter.rb', line 14 def maximum_x_value=(value) @maximum_x_value = value end |
#minimum_x_value=(value) ⇒ Object (writeonly)
Minimum X Value. The value will get overwritten by the min in the datasets.
18 19 20 |
# File 'lib/gruff/scatter.rb', line 18 def minimum_x_value=(value) @minimum_x_value = value end |
#show_vertical_markers=(value) ⇒ Object (writeonly)
Allow for vertical marker lines.
32 33 34 |
# File 'lib/gruff/scatter.rb', line 32 def show_vertical_markers=(value) @show_vertical_markers = value end |
#stroke_width=(value) ⇒ Object (writeonly)
Sets the attribute stroke_width
25 26 27 |
# File 'lib/gruff/scatter.rb', line 25 def stroke_width=(value) @stroke_width = value end |
#use_vertical_x_labels=(value) ⇒ Object (writeonly)
Sets the attribute use_vertical_x_labels
36 37 38 |
# File 'lib/gruff/scatter.rb', line 36 def use_vertical_x_labels=(value) @use_vertical_x_labels = value end |
#x_label_margin=(value) ⇒ Object (writeonly)
Allow using vertical labels in the X axis (and setting the label margin).
35 36 37 |
# File 'lib/gruff/scatter.rb', line 35 def x_label_margin=(value) @x_label_margin = value end |
Instance Method Details
#data(name, x_data_points = [], y_data_points = [], color = nil) ⇒ Object Also known as: dataxy
If you want to use a preset theme, you must set it before calling #data.
The first parameter is the name of the dataset. The next two are the x and y axis data points contain in their own array in that respective order. The final parameter is the color.
Can be called multiple times with different datasets for a multi-valued graph.
If the color argument is nil, the next color from the default theme will be used.
80 81 82 83 84 85 86 87 88 89 90 91 92 |
# File 'lib/gruff/scatter.rb', line 80 def data(name, x_data_points = [], y_data_points = [], color = nil) # make sure it's an array x_data_points = Array(x_data_points) y_data_points = Array(y_data_points) raise ArgumentError, 'Data Points contain nil Value!' if x_data_points.include?(nil) || y_data_points.include?(nil) raise ArgumentError, 'x_data_points is empty!' if x_data_points.empty? raise ArgumentError, 'y_data_points is empty!' if y_data_points.empty? raise ArgumentError, 'x_data_points.length != y_data_points.length!' if x_data_points.length != y_data_points.length # Call the existing data routine for the x/y axis data store.add(name, y_data_points, color, x_data_points) end |
#enable_vertical_line_markers=(value) ⇒ Object
Please use show_vertical_markers
attribute instead.
Allow enabling vertical lines. When you have a lot of data, they can work great.
40 41 42 43 |
# File 'lib/gruff/scatter.rb', line 40 def enable_vertical_line_markers=(value) warn '#enable_vertical_line_markers= is deprecated. Please use `show_vertical_markers` attribute instead' @show_vertical_markers = value end |