Javascript 在highcharts中获取气泡图中系列的名称
下面是气泡图的JSON数据Javascript 在highcharts中获取气泡图中系列的名称,javascript,highcharts,bubble-chart,Javascript,Highcharts,Bubble Chart,下面是气泡图的JSON数据 { "chart":{"type":"bubble","plotBackgroundImage":"Image/bubble.jpg"}, "plotOptions":{"series":{"dataLabels":{"enabled":true}}}, "series": [ {"data":[{"x":7,"y":7,"z":49,"name":"Task 2"}]}, {"data":[{"x":7,"y":8,"z":56,"name":
{
"chart":{"type":"bubble","plotBackgroundImage":"Image/bubble.jpg"},
"plotOptions":{"series":{"dataLabels":{"enabled":true}}},
"series":
[
{"data":[{"x":7,"y":7,"z":49,"name":"Task 2"}]},
{"data":[{"x":7,"y":8,"z":56,"name":"Task 4"}]},
{"data":[{"x":7,"y":8,"z":56,"name":"Task 3"}]},
{"data":[{"x":3,"y":7,"z":21,"name":"Task 1"}]}
]
}
为了简单起见,我减少了数据内容,下面是我的结果
我想让相关气泡的名称与气泡一起出现,尽管序列名称不同,但观察到y的数值显示在每个气泡上,我不想用数字表示,也希望以固定大小固定背景图像。任何帮助都将不胜感激
--------更新问题--------------
我的JSON数据存储在字符串中,我将这些数据直接传递给Highchart API以绘制图形,现在我假设如何传递格式化程序函数,请任何人解释一下或以任何其他方式实现此目标。在工具提示格式化程序中,您可以访问与该点相关的所有选项 我认为它也适用于这种情况 下面是一个示例
tooltip:{
formatter: function(){
var name = this.point.options.name;
return name + ' x : ' + this.x + " y: " + this.y
}
}
我希望这将对您有所帮助。使用
工具提示。pointFormat
,这是工具提示的模式,它的选项有限,但point.name可以工作,请看:
$(“#容器”)。高图({
图表:{
},
xAxis:{
类别:[一月、二月、三月、四月、五月、六月、七月、八月、九月、十月、十一月、十二月]
},
工具提示:{
分享:是的,
是的,
总部:'',
pointFormat:“{point.name}:”+
“{point.y}EUR”,
页脚格式:“”,
数值小数:2
},
系列:[{
姓名:'短',
数据:[{
x:3,y:15,名称:“测试”
}, {
x:5,y:17,名称:“测试”
}]
}]
});
面对这里的尖锐问题,我尝试使用formatter,但问题是我正在从WCF服务创建JSON数据,我将其传递给创建Highcharts Graph,现在我不知道我应该如何创建函数(),以便在转换为JSON后它可以工作……详细问题,请检查我更新的问题否..这没有帮助,事实上我没有在point format中获得point.format..你能检查我更新的问题并告诉我如何将pointformat传递到对象以将其序列化为JSON吗?使用tooltip.pointformat,而不是point.format。我不知道您在服务器端使用的框架,所以我不会以这种方式帮助您。我只能给你们举一个例子,看看Highcharts是如何工作的。正如你们在现场演示中看到的,它是有效的。
tooltip:{
formatter: function(){
var name = this.point.options.name;
return name + ' x : ' + this.x + " y: " + this.y
}
}
$('#container').highcharts({
chart: {
},
xAxis: {
categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
},
tooltip: {
shared: true,
useHTML: true,
headerFormat: '<table>',
pointFormat: '<tr><td style="color: {series.color}">{point.name}: </td>' +
'<td style="text-align: right"><b>{point.y} EUR</b></td></tr>',
footerFormat: '</table>',
valueDecimals: 2
},
series: [{
name: 'Short',
data: [{
x: 3, y: 15, name: 'test'
}, {
x: 5, y: 17, name: 'testing'
}]
}]
});