Javascript 将子类别添加到highcharts上的y轴
我试图在高图上的热图上为我的yaxis添加子类别,但我得到了Javascript 将子类别添加到highcharts上的y轴,javascript,highcharts,categories,heatmap,axis,Javascript,Highcharts,Categories,Heatmap,Axis,我试图在高图上的热图上为我的yaxis添加子类别,但我得到了[对象,对象] 我试图将iphone和ipad作为分类,将google、bing和jeeves作为子分类 这是我在文档中看到的创建多级类别的方法: yAxis: { categories: [ { name: "iphone", categories: [ "google",
[对象,对象]
我试图将iphone和ipad作为分类,将google、bing和jeeves作为子分类
这是我在文档中看到的创建多级类别的方法:
yAxis: {
categories: [
{
name: "iphone",
categories: [
"google",
"bing",
"jeeves",
]
},
{
name: "ipad",
categories: [
"google",
"bing",
"jeeves",
]
}
]
}
这是我的代码:
函数getPointCategoryName(点,维度){
var系列=点系列,
isY=维度===“y”,
轴=系列[isY?'yAxis':'xAxis'];
返回轴类别[点[isY?'y':'x'];
}
Highcharts.chart('容器'{
图表:{
类型:'热图',
/*玛金托普:40,
marginBottom:80,
绘图边框宽度:1*/
},
xAxis:{
类别:['val1','val2','val3',]
},
亚克斯:{
类别:[
{
名称:“iphone”,
类别:[
“谷歌”,
“必应”,
“杰夫斯”,
]
},
{
名称:“ipad”,
类别:[
“谷歌”,
“必应”,
“杰夫斯”,
]
}
]
},
可访问性:{
要点:{
descriptionFormatter:函数(点){
var ix=点指数+1,
xName=getPointCategoryName(点,'x'),
yName=getPointCategoryName(点“y”),
val=点值;
返回ix+'.+xName+'销售'+yName+','+val+';
}
}
},
颜色轴:{
分:0,,
minColor:“#FFFFFF”,
maxColor:Highcharts.getOptions().Color[0]
},
/*图例:{
对齐:“右”,
布局:“垂直”,
保证金:0,
垂直排列:“顶部”,
y:25,
符号高度:280
}, */
工具提示:{
格式化程序:函数(){
返回''+getPointCategoryName(this.point,'x')+'已售出'+
'+getPointCategoryName(this.point,'y')+''上的this.point.value+'项; } }, 系列:[{ 边框宽度:1, //xAxis:1, 数据:[[0,0,67], [0, 1, 23], [0, 2, 10], [0, 3, 67], [0, 4, 23], [0, 5, 10], [1, 0, 78], [1, 1, 12], [1, 2, 20], [1, 3, 78], [1, 4, 12], [1, 5, 20], [2, 0, 12], [2, 1, 14], [2, 2, 30], [2, 3, 12], [2, 4, 14], [2, 5, 30]] , 数据标签:{ 启用:对, 颜色:'#000000' } }], 响应:{ 规则:[{ 条件:{ 最大宽度:500 }, 图表选项:{ 亚克斯:{ 标签:{ 格式化程序:函数(){ 返回此.value.charAt(0); } } } } }] } });代码>
按如下方式添加y轴值
yAxis: {
labels: {
formatter: function() {
return categories[0].name
}
}
},
var类别=[
{
名称:“iphone”,
类别:[
“谷歌”,
“必应”,
“杰夫斯”,
]
},
{
名称:“ipad”,
类别:[
“谷歌”,
“必应”,
“杰夫斯”,
]
}
];
函数getPointCategoryName(点,维度){
var系列=点系列,
isY=维度===“y”,
轴=系列[isY?'yAxis':'xAxis'];
返回轴类别[点[isY?'y':'x'];
}
Highcharts.chart('容器'{
图表:{
类型:'热图',
/*玛金托普:40,
marginBottom:80,
绘图边框宽度:1*/
},
xAxis:{
类别:['val1','val2','val3',]
},
亚克斯:{
标签:{
格式化程序:函数(){
退货类别[0]。名称
}
}
},
可访问性:{
要点:{
descriptionFormatter:函数(点){
var ix=点指数+1,
xName=getPointCategoryName(点,'x'),
yName=getPointCategoryName(点“y”),
val=点值;
返回ix+'.+xName+'销售'+yName+','+val+';
}
}
},
颜色轴:{
分:0,,
minColor:“#FFFFFF”,
maxColor:Highcharts.getOptions().Color[0]
},
/*图例:{
对齐:“右”,
布局:“垂直”,
保证金:0,
垂直排列:“顶部”,
y:25,
符号高度:280
}, */
工具提示:{
格式化程序:函数(){
返回''+getPointCategoryName(this.point,'x')+'已售出
'+
'+getPointCategoryName(this.point,'y')+''上的this.point.value+'项;
}
},
系列:[{
边框宽度:1,
//xAxis:1,
数据:[[0,0,67],
[0, 1, 23],
[0, 2, 10],
[0, 3, 67],
[0, 4, 23],
[0, 5, 10],
[1, 0, 78],
[1, 1, 12],
[1, 2, 20],
[1, 3, 78],
[1, 4, 12],
[1, 5, 20],
[2, 0, 12],
[2, 1, 14],
[2, 2, 30],
[2, 3, 12],
[2, 4, 14],
[2, 5, 30]]
,
数据标签:{
启用:对,
颜色:'#000000'
}
}],
响应:{
规则:[{
条件:{
最大宽度:500
},
图表选项:{
亚克斯:{
标签:{
格式化程序:函数(){
返回此.value.charAt(0);
}
}
}
}
}]
}
});代码>
您缺少分组类别
插件,但正如您在本例中所看到的:它不能很好地使用y轴
作为一种解决方案,我建议您使用倒置图表和x轴上的分组类别
chart: {
inverted: true
}