|
@@ -26,15 +26,7 @@
|
|
|
<% if @rows.any? %>
|
|
|
<% values = @rows.first.values %>
|
|
|
<% chart_id = SecureRandom.hex %>
|
|
|
- <% if values.size >= 2 && (values.first.is_a?(Time) || values.first.is_a?(Date)) && values[1..-1].all?{|v| v.is_a?(Numeric) } %>
|
|
|
- <% time_k = @columns.keys.first %>
|
|
|
- <%= line_chart @columns.keys[1..-1].map{|k| {name: k, data: @rows.map{|r| [r[time_k], r[k]] }} }, id: chart_id, min: nil %>
|
|
|
- <% elsif values.size == 3 && (values.first.is_a?(Time) || values.first.is_a?(Date)) && values[1].is_a?(String) && values[2].is_a?(Numeric) %>
|
|
|
- <% keys = @columns.keys %>
|
|
|
- <%= line_chart @rows.group_by { |v| v[keys[1]] }.map { |name, v| {name: name, data: v.map { |v2| [v2[keys[0]], v2[keys[2]]] } } }, id: chart_id, min: nil %>
|
|
|
- <% elsif values.size == 2 && values.first.is_a?(String) && values.last.is_a?(Numeric) %>
|
|
|
- <%= pie_chart @rows.map(&:values), library: {sliceVisibilityThreshold: 1 / 40.0}, id: chart_id %>
|
|
|
- <% elsif blazer_maps? && @markers.any? %>
|
|
|
+ <% if blazer_maps? && @markers.any? %>
|
|
|
<div id="map" style="height: <%= @only_chart ? 300 : 500 %>px;"></div>
|
|
|
<script>
|
|
|
L.mapbox.accessToken = '<%= ENV["MAPBOX_ACCESS_TOKEN"] %>';
|
|
@@ -56,13 +48,21 @@
|
|
|
properties: {
|
|
|
description: marker.title,
|
|
|
'marker-color': '#f86767',
|
|
|
- 'marker-symbol': 'star'
|
|
|
+ 'marker-size': 'small'
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
featureLayer.setGeoJSON(geojson);
|
|
|
map.fitBounds(featureLayer.getBounds());
|
|
|
</script>
|
|
|
+ <% elsif values.size >= 2 && (values.first.is_a?(Time) || values.first.is_a?(Date)) && values[1..-1].all?{|v| v.is_a?(Numeric) } %>
|
|
|
+ <% time_k = @columns.keys.first %>
|
|
|
+ <%= line_chart @columns.keys[1..-1].map{|k| {name: k, data: @rows.map{|r| [r[time_k], r[k]] }} }, id: chart_id, min: nil %>
|
|
|
+ <% elsif values.size == 3 && (values.first.is_a?(Time) || values.first.is_a?(Date)) && values[1].is_a?(String) && values[2].is_a?(Numeric) %>
|
|
|
+ <% keys = @columns.keys %>
|
|
|
+ <%= line_chart @rows.group_by { |v| v[keys[1]] }.map { |name, v| {name: name, data: v.map { |v2| [v2[keys[0]], v2[keys[2]]] } } }, id: chart_id, min: nil %>
|
|
|
+ <% elsif values.size == 2 && values.first.is_a?(String) && values.last.is_a?(Numeric) %>
|
|
|
+ <%= pie_chart @rows.map(&:values), library: {sliceVisibilityThreshold: 1 / 40.0}, id: chart_id %>
|
|
|
<% elsif @only_chart %>
|
|
|
<% if @rows.size == 1 && @rows.first.size == 1 %>
|
|
|
<p style="font-size: 160px;"><%= blazer_format_value(@rows.first.keys.first, @rows.first.values.first) %></p>
|