Class: FnordMetric::TimelineWidget
- Inherits:
-
Widget
- Object
- Widget
- FnordMetric::TimelineWidget
show all
- Defined in:
- lib/fnordmetric/timeline_widget.rb
Instance Attribute Summary
Attributes inherited from Widget
#gauges, #tick
Instance Method Summary
collapse
Methods inherited from Widget
#add_gauges, #default_range, #ensure_has_tick!, #error!, #include_current?, #initialize, #range, #render, #ticks, #title, #token
Instance Method Details
#data ⇒ Object
24
25
26
27
28
29
30
31
|
# File 'lib/fnordmetric/timeline_widget.rb', line 24
def data
@series_colors = ["#FACE4F", "#42436B", "#CD645A", "#2F635E"]
super.merge(
:labels => data_labels,
:series => data_series
)
end
|
#data_labels ⇒ Object
3
4
5
6
7
|
# File 'lib/fnordmetric/timeline_widget.rb', line 3
def data_labels
ticks.map do |t|
Time.at(t).strftime('%d.%m.%y %H:%M')
end
end
|
#data_series ⇒ Object
9
10
11
12
13
14
15
16
|
# File 'lib/fnordmetric/timeline_widget.rb', line 9
def data_series
gauges.map do |gauge|
{
:color => next_series_colour,
:data => ticks.map{ |t| gauge.value_at(t)||0 }
}
end
end
|
#has_tick? ⇒ Boolean
33
34
35
|
# File 'lib/fnordmetric/timeline_widget.rb', line 33
def has_tick?
true
end
|
#next_series_colour ⇒ Object
18
19
20
21
22
|
# File 'lib/fnordmetric/timeline_widget.rb', line 18
def next_series_colour
@series_colors.pop.tap do |color|
@series_colors.unshift(color)
end
end
|