Index: packages/charted/lib/charts/cartesian_renderers/stackedbar_chart_renderer.dart |
diff --git a/packages/charted/lib/charts/cartesian_renderers/stackedbar_chart_renderer.dart b/packages/charted/lib/charts/cartesian_renderers/stackedbar_chart_renderer.dart |
index 396b8042e7a93d0c91b713cfc0fd21549afb209f..05623ba52a74b6956c5ce44457d585ea5eb91222 100644 |
--- a/packages/charted/lib/charts/cartesian_renderers/stackedbar_chart_renderer.dart |
+++ b/packages/charted/lib/charts/cartesian_renderers/stackedbar_chart_renderer.dart |
@@ -11,7 +11,7 @@ part of charted.charts; |
class StackedBarChartRenderer extends CartesianRendererBase { |
static const RADIUS = 2; |
- final Iterable<int> dimensionsUsingBand = const[0]; |
+ final Iterable<int> dimensionsUsingBand = const [0]; |
final bool alwaysAnimate; |
@override |
@@ -41,28 +41,32 @@ class StackedBarChartRenderer extends CartesianRendererBase { |
dimensionScale = area.dimensionScales.first; |
var rows = new List() |
- ..addAll(area.data.rows.map((e) => |
- new List.generate(measuresCount, |
- (i) => e.elementAt(series.measures.elementAt(_reverseIdx(i)))))); |
+ ..addAll(area.data.rows.map((e) => new List.generate(measuresCount, |
+ (i) => e.elementAt(series.measures.elementAt(_reverseIdx(i)))))); |
- var dimensionVals = area.data.rows.map( |
- (row) => row.elementAt(area.config.dimensions.first)).toList(); |
+ var dimensionVals = area.data.rows |
+ .map((row) => row.elementAt(area.config.dimensions.first)) |
+ .toList(); |
var groups = root.selectAll('.stack-rdr-rowgroup').data(rows); |
var animateBarGroups = alwaysAnimate || !groups.isEmpty; |
groups.enter.append('g') |
..classed('stack-rdr-rowgroup') |
- ..attrWithCallback('transform', (d, i, c) => verticalBars ? |
- 'translate(${dimensionScale.scale(dimensionVals[i])}, 0)' : |
- 'translate(0, ${dimensionScale.scale(dimensionVals[i])})'); |
+ ..attrWithCallback( |
+ 'transform', |
+ (d, i, c) => verticalBars |
+ ? 'translate(${dimensionScale.scale(dimensionVals[i])}, 0)' |
+ : 'translate(0, ${dimensionScale.scale(dimensionVals[i])})'); |
groups.attrWithCallback('data-row', (d, i, e) => i); |
groups.exit.remove(); |
if (animateBarGroups) { |
groups.transition() |
- ..attrWithCallback('transform', (d, i, c) => verticalBars ? |
- 'translate(${dimensionScale.scale(dimensionVals[i])}, 0)' : |
- 'translate(0, ${dimensionScale.scale(dimensionVals[i])})') |
+ ..attrWithCallback( |
+ 'transform', |
+ (d, i, c) => verticalBars |
+ ? 'translate(${dimensionScale.scale(dimensionVals[i])}, 0)' |
+ : 'translate(0, ${dimensionScale.scale(dimensionVals[i])})') |
..duration(theme.transitionDurationMilliseconds); |
} |
@@ -83,15 +87,13 @@ class StackedBarChartRenderer extends CartesianRendererBase { |
prevOffsetVal[prevOffsetVal.length - 1] = offsetVal; |
} |
}); |
- } |
- |
+ } |
var barWidth = dimensionScale.rangeBand - theme.defaultStrokeWidth; |
// Calculate height of each segment in the bar. |
// Uses prevAllZeroHeight and prevOffset to track previous segments |
- var prevAllZeroHeight = true, |
- prevOffset = 0; |
+ var prevAllZeroHeight = true, prevOffset = 0; |
var getBarLength = (d, i) { |
if (!verticalBars) return measureScale.scale(d).round(); |
var retval = rect.height - measureScale.scale(d).round(); |
@@ -121,8 +123,7 @@ class StackedBarChartRenderer extends CartesianRendererBase { |
// Initial "y" position of a bar that is being created. |
// Only used when animateBarGroups is set to true. |
- var ic = 10000000, |
- order = 0; |
+ var ic = 10000000, order = 0; |
var getInitialBarPos = (i) { |
var tempY; |
if (i <= ic && i > 0) { |
@@ -163,14 +164,15 @@ class StackedBarChartRenderer extends CartesianRendererBase { |
var buildPath = (d, int i, Element e, bool animate, int roundIdx) { |
var position = animate ? getInitialBarPos(i) : getBarPos(d, i), |
length = animate ? 0 : getBarLength(d, i), |
- radius = series.measures.elementAt(_reverseIdx(i)) == roundIdx ? RADIUS : 0, |
+ radius = |
+ series.measures.elementAt(_reverseIdx(i)) == roundIdx ? RADIUS : 0, |
path = (length != 0) |
? verticalBars |
? topRoundedRect(0, position, barWidth, length, radius) |
: rightRoundedRect(position, 0, length, barWidth, radius) |
: ''; |
- e.attributes['data-offset'] = verticalBars ? |
- position.toString() : (position + length).toString(); |
+ e.attributes['data-offset'] = |
+ verticalBars ? position.toString() : (position + length).toString(); |
return path; |
}; |
@@ -189,8 +191,8 @@ class StackedBarChartRenderer extends CartesianRendererBase { |
rect.classes.add('stack-rdr-bar'); |
rect.attributes |
- ..['d'] = buildPath (d == null ? 0 : d, i, rect, animateBarGroups, |
- roundIndex) |
+ ..['d'] = |
+ buildPath(d == null ? 0 : d, i, rect, animateBarGroups, roundIndex) |
..['stroke-width'] = '${theme.defaultStrokeWidth}px' |
..['fill'] = color |
..['stroke'] = color; |
@@ -235,7 +237,7 @@ class StackedBarChartRenderer extends CartesianRendererBase { |
var row = int.parse(e.parent.dataset['row']), |
roundIndex = _lastMeasureWithData[row]; |
return buildPath(d == null ? 0 : d, i, e, false, roundIndex); |
- }); |
+ }); |
} |
bar.exit.remove(); |
@@ -285,12 +287,12 @@ class StackedBarChartRenderer extends CartesianRendererBase { |
var groups = host.querySelectorAll('.stack-rdr-rowgroup'); |
if (groups == null || groups.isEmpty) return; |
- for(int i = 0, len = groups.length; i < len; ++i) { |
+ for (int i = 0, len = groups.length; i < len; ++i) { |
var group = groups.elementAt(i), |
bars = group.querySelectorAll('.stack-rdr-bar'), |
row = int.parse(group.dataset['row']); |
- for(int j = 0, barsCount = bars.length; j < barsCount; ++j) { |
+ for (int j = 0, barsCount = bars.length; j < barsCount; ++j) { |
var bar = bars.elementAt(j), |
column = int.parse(bar.dataset['column']), |
color = colorForValue(column, row), |
@@ -314,8 +316,7 @@ class StackedBarChartRenderer extends CartesianRendererBase { |
if (controller == null) return; |
var rowStr = e.parent.dataset['row']; |
var row = rowStr != null ? int.parse(rowStr) : null; |
- controller.add(new DefaultChartEventImpl( |
- scope.event, area, series, row, |
+ controller.add(new DefaultChartEventImpl(scope.event, area, series, row, |
series.measures.elementAt(_reverseIdx(index)), data)); |
} |