Browse Source

Fix opacity for hidden legend item

pull/183/head
Masayuki Tanaka 11 years ago
parent
commit
633ed3bffc
  1. 13
      c3.js
  2. 6
      c3.min.js

13
c3.js

@ -337,7 +337,7 @@
}; };
var isLegendRight = __legend_position === 'right'; var isLegendRight = __legend_position === 'right';
var legendStep = 0, legendItemWidth = 0, legendItemHeight = 0; var legendStep = 0, legendItemWidth = 0, legendItemHeight = 0, legendOpacityForHidden = 0.15;
/*-- Define Functions --*/ /*-- Define Functions --*/
@ -3744,14 +3744,17 @@
/*-- Draw Legend --*/ /*-- Draw Legend --*/
function opacityForLegend(id) { function opacityForLegend(id) {
return d3.select(selectorLegend(id)).classed(CLASS.legendItemHidden) ? 0.5 : 1; return d3.select(selectorLegend(id)).classed(CLASS.legendItemHidden) ? legendOpacityForHidden : 1;
}
function opacityForUnfocusedLegend(id) {
return d3.select(selectorLegend(id)).classed(CLASS.legendItemHidden) ? legendOpacityForHidden : 0.3;
} }
function toggleFocusLegend(id, focus) { function toggleFocusLegend(id, focus) {
var legendItem = legend.selectAll('.' + CLASS.legendItem), var legendItem = legend.selectAll('.' + CLASS.legendItem),
isTarget = function (d) { return (!id || d === id); }, isTarget = function (d) { return (!id || d === id); },
notTarget = function (d) { return !isTarget(d); }; notTarget = function (d) { return !isTarget(d); };
legendItem.filter(notTarget).transition().duration(100).style('opacity', focus ? 0.3 : opacityForLegend); legendItem.filter(notTarget).transition().duration(100).style('opacity', focus ? opacityForUnfocusedLegend : opacityForLegend);
legendItem.filter(isTarget).transition().duration(100).style('opacity', focus ? opacityForLegend : 0.3); legendItem.filter(isTarget).transition().duration(100).style('opacity', focus ? opacityForLegend : opacityForUnfocusedLegend);
} }
function focusLegend(id) { function focusLegend(id) {
toggleFocusLegend(id, true); toggleFocusLegend(id, true);
@ -4044,7 +4047,7 @@
legend.selectAll(selectorLegends(targetIds)) legend.selectAll(selectorLegends(targetIds))
.classed(CLASS.legendItemHidden, true) .classed(CLASS.legendItemHidden, true)
.transition() .transition()
.style('opacity', 0.5); .style('opacity', legendOpacityForHidden);
} }
redraw({withUpdateOrgXDomain: true, withUpdateXDomain: true, withTransitionForHorizontalAxis: false}); redraw({withUpdateOrgXDomain: true, withUpdateXDomain: true, withTransitionForHorizontalAxis: false});

6
c3.min.js vendored

File diff suppressed because one or more lines are too long
Loading…
Cancel
Save