I`m trying to add a tooltip to my chart but it doesn't work. I've added it both to bullet and to series as well.
There is no enough info in docs about how to add tooltip in this case.
When I add tooltip to series in which graphic is based everything works perfectly
Can you help?
"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."
am5.ready(function() {
// Create root element
// https://www.amcharts.com/docs/v5/getting-started/#Root_element
var root = am5.Root.new("chartdiv");
// Set themes
// https://www.amcharts.com/docs/v5/concepts/themes/
root.setThemes([
am5themes_Animated.new(root)
]);
// Create chart
// https://www.amcharts.com/docs/v5/charts/xy-chart/
var chart = root.container.children.push(am5xy.XYChart.new(root, {
panX: true,
panY: true,
wheelY: "zoomXY",
pinchZoomX: true,
pinchZoomY: true
}));
chart.get("colors").set("step", 2);
// Create axes
// https://www.amcharts.com/docs/v5/charts/xy-chart/axes/
var xAxis = chart.xAxes.push(am5xy.ValueAxis.new(root, {
renderer: am5xy.AxisRendererX.new(root, {}),
maxDeviation: 0.3,
}));
var yAxis = chart.yAxes.push(am5xy.ValueAxis.new(root, {
renderer: am5xy.AxisRendererY.new(root, {}),
maxDeviation: 0.3,
}));
var tooltip = am5.Tooltip.new(root, {
labelText: "MCaPos: {valueY}\nRN: ${valueY}",
getFillFromSprite: false,
getStrokeFromSprite: false,
autoTextColor: false,
getLabelFillFromSprite: false,
});
tooltip.get('background').setAll({
fill: am5.color('#ffffff'),
strokeWidth: 0,
})
tooltip.label.setAll({
fill: am5.color('#000000')
});
console.log(tooltip)
// Create series
// https://www.amcharts.com/docs/v5/charts/xy-chart/series/
var series0 = chart.series.push(am5xy.LineSeries.new(root, {
calculateAggregates: true,
xAxis: xAxis,
yAxis: yAxis,
valueYField: "y",
valueXField: "x",
valueField: "value",
tooltip: am5.Tooltip.new(root, {
labelText: "{valueY}"
})
}));
// Create series
// https://www.amcharts.com/docs/v5/charts/xy-chart/series/
var series = chart.series.push(am5xy.LineSeries.new(root, {
name: "Series 1",
xAxis,
yAxis,
valueYField: "y",
valueXField: "x",
tooltip: am5.Tooltip.new(root, {
labelText: "{valueY}"
})
}));
series.strokes.template.setAll({
strokeWidth: 2,
strokeDasharray: [3, 3]
});
series.data.setAll([{
"x": 0.01,
"y": 1409090.91
}, {
"x": 0.06,
"y": 1589743.59
}, {
"x": 0.11,
"y": 1823529.41
}, {
"x": 0.16,
"y": 2137931.03
}, {
"x": 0.21,
"y": 2583333.33
}, {
"x": 0.26,
"y": 3263157.89
}, {
"x": 0.31,
"y": 4428571.43
}, {
"x": 0.36,
"y": 6888888.89
}, {
"x": 0.41,
"y": 15500000
}]);
var circleTemplate = am5.Template.new({});
series0.bullets.push(function() {
var graphics = am5.Circle.new(root, {
fill: am5.color('#31DB42'),
}, circleTemplate);
return am5.Bullet.new(root, {
sprite: graphics,
radius: 1
});
});
// Add heat rule
// https://www.amcharts.com/docs/v5/concepts/settings/heat-rules/
series0.set("heatRules", [{
target: circleTemplate,
min: 3,
max: 35,
dataField: "value",
key: "radius"
}]);
// Add bullet
// https://www.amcharts.com/docs/v5/charts/xy-chart/series/#Bullets
var starTemplate = am5.Template.new({});
series0.strokes.template.set("strokeOpacity", 0);
series0.set('tooltip', tooltip);
// Add cursor
// https://www.amcharts.com/docs/v5/charts/xy-chart/cursor/
chart.set("cursor", am5xy.XYCursor.new(root, {
xAxis,
yAxis,
snapToSeries: [series0, series]
}));
series0.data.setAll([{
"x": 0.09271021903999942,
"y": 2712290
}]);
series0.appear(1000);
// Make stuff animate on load
// https://www.amcharts.com/docs/v5/concepts/animations/
series.appear(1000);
chart.appear(1000, 100);
}); // end am5.ready()
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdn.amcharts.com/lib/5/themes/Animated.js"></script>
<script src="https://cdn.amcharts.com/lib/5/xy.js"></script>
<script src="https://cdn.amcharts.com/lib/5/index.js"></script>
<div id="chartdiv" class="mt-20"></div>