在 Kendo UI 工具提示上显示 Kendo UI 折线图
Displaying Kendo UI line chart on Kendo UI tooltip
我想在工具提示上显示折线图,如下所示 -
Line Chart on tooltip
为此,我创建了图表并使用 content 属性
将其嵌入到工具提示中
content: function (e) {
return $("#" + $(e.target).attr("id") + "_tooltip").html();
}
问题是我想在系列上显示工具提示,但现在还没有发生。但是,如果我在正文上绘制相同的图表而不是将其嵌入到工具提示中,它就可以正常工作。
我需要配置什么来处理这种情况吗?
您可以将图表工具提示设为内容模板,然后在显示工具提示时创建图表。
代码:
<script id="template" type="text/x-kendo-template">
<div id="myTooltip">
<span>Some Text here</span>
<div id="myChart"></div>
<span>hover the connectors, not showing tootip</span>
</div>
</script>
function CreateTooltipChart(){
// Satter line chart embedded in tooltip
$("#myChart").kendoChart({
chartArea: {
height: 200,
width: 310
},
title: {
text: "Charge current vs. charge time"
},
seriesDefaults: {
type: "scatterLine"
},
series: [{
data: [[10, 10], [15, 20], [20, 25], [32, 40]]
}],
xAxis: {
max: 35,
labels: {
format: "{0}m"
},
},
yAxis: {
max: 50,
labels: false
},
//tooltip for chart is set here
tooltip: {
visible: true,
format: "{1}% in {0} minutes"
}
});
}
// Tooltip on span element
var tooltip = $('.show-tooltip').kendoTooltip({
autoHide: false,
position: "right",
width: 312,
//height: 300,
show: function(e){
CreateTooltipChart();
},
content: kendo.template($("#template").html()),
}).data("kendoTooltip");
我想在工具提示上显示折线图,如下所示 -
Line Chart on tooltip
为此,我创建了图表并使用 content 属性
content: function (e) {
return $("#" + $(e.target).attr("id") + "_tooltip").html();
}
问题是我想在系列上显示工具提示,但现在还没有发生。但是,如果我在正文上绘制相同的图表而不是将其嵌入到工具提示中,它就可以正常工作。
我需要配置什么来处理这种情况吗?
您可以将图表工具提示设为内容模板,然后在显示工具提示时创建图表。
代码:
<script id="template" type="text/x-kendo-template">
<div id="myTooltip">
<span>Some Text here</span>
<div id="myChart"></div>
<span>hover the connectors, not showing tootip</span>
</div>
</script>
function CreateTooltipChart(){
// Satter line chart embedded in tooltip
$("#myChart").kendoChart({
chartArea: {
height: 200,
width: 310
},
title: {
text: "Charge current vs. charge time"
},
seriesDefaults: {
type: "scatterLine"
},
series: [{
data: [[10, 10], [15, 20], [20, 25], [32, 40]]
}],
xAxis: {
max: 35,
labels: {
format: "{0}m"
},
},
yAxis: {
max: 50,
labels: false
},
//tooltip for chart is set here
tooltip: {
visible: true,
format: "{1}% in {0} minutes"
}
});
}
// Tooltip on span element
var tooltip = $('.show-tooltip').kendoTooltip({
autoHide: false,
position: "right",
width: 312,
//height: 300,
show: function(e){
CreateTooltipChart();
},
content: kendo.template($("#template").html()),
}).data("kendoTooltip");