mirror of https://github.com/masayuki0812/c3.git
Masayuki Tanaka
11 years ago
10 changed files with 182 additions and 28 deletions
File diff suppressed because one or more lines are too long
@ -0,0 +1,38 @@ |
|||||||
|
<html> |
||||||
|
<head> |
||||||
|
<link rel="stylesheet" type="text/css" href="/css/c3.css"> |
||||||
|
</head> |
||||||
|
<body> |
||||||
|
<div id="chart"></div> |
||||||
|
|
||||||
|
<script src="http://d3js.org/d3.v3.min.js" charset="utf-8"></script> |
||||||
|
<script src="/js/c3.js"></script> |
||||||
|
<script> |
||||||
|
var chart = c3.generate({ |
||||||
|
data: { |
||||||
|
columns: [ |
||||||
|
['data1', 30, 200, 100, 400, 150, 250], |
||||||
|
['data2', 50, 20, 10, 40, 15, 25] |
||||||
|
], |
||||||
|
} |
||||||
|
}); |
||||||
|
|
||||||
|
setTimeout(function () { |
||||||
|
chart.tooltip.show({ x: 1 }); |
||||||
|
}, 1000); |
||||||
|
|
||||||
|
setTimeout(function () { |
||||||
|
chart.tooltip.show({ index: 3 }); |
||||||
|
}, 2000); |
||||||
|
|
||||||
|
setTimeout(function () { |
||||||
|
chart.tooltip.show({ data: {x: 2} }); |
||||||
|
}, 3000); |
||||||
|
|
||||||
|
setTimeout(function () { |
||||||
|
chart.tooltip.hide(); |
||||||
|
}, 4000); |
||||||
|
|
||||||
|
</script> |
||||||
|
</body> |
||||||
|
</html> |
@ -0,0 +1,35 @@ |
|||||||
|
c3_chart_fn.tooltip = function () {}; |
||||||
|
c3_chart_fn.tooltip.show = function (args) { |
||||||
|
var $$ = this.internal, index, mouse; |
||||||
|
|
||||||
|
// determine mouse position on the chart
|
||||||
|
if (args.mouse) { |
||||||
|
mouse = args.mouse; |
||||||
|
} |
||||||
|
|
||||||
|
// determine focus data
|
||||||
|
if (args.data) { |
||||||
|
if ($$.isMultipleX()) { |
||||||
|
// if multiple xs, target point will be determined by mouse
|
||||||
|
mouse = [$$.x(args.data.x), $$.getYScale(args.data.id)(args.data.value)]; |
||||||
|
index = null; |
||||||
|
} else { |
||||||
|
// TODO: when tooltip_grouped = false
|
||||||
|
index = isValue(args.data.index) ? args.data.index : $$.getIndexByX(args.data.x); |
||||||
|
} |
||||||
|
} |
||||||
|
else if (args.x) { |
||||||
|
index = $$.getIndexByX(args.x); |
||||||
|
} |
||||||
|
else if (args.index) { |
||||||
|
index = args.index; |
||||||
|
} |
||||||
|
|
||||||
|
// emulate mouse events to show
|
||||||
|
$$.dispatchEvent('mouseover', index, mouse); |
||||||
|
$$.dispatchEvent('mousemove', index, mouse); |
||||||
|
}; |
||||||
|
c3_chart_fn.tooltip.hide = function () { |
||||||
|
// TODO: get target data by checking the state of focus
|
||||||
|
this.internal.dispatchEvent('mouseout', 0); |
||||||
|
}; |
Loading…
Reference in new issue