2013-04-10 96 views
1

我正在寻找一种方式来显示下列情况下Highcharts气泡图 - 与X轴和Y轴标题气泡图:Highcharts - 错误#14

我要显示的项目名称X轴(“项目a”,“项目b”)和y轴上的团队成员名称(例如“tom”,“bill”,“john”)。这些气泡用于显示每个团队成员在每个项目上花费的时间。

数据系列应该类似['project a','tom',25.0],['project b','john',12.5] ...,但尝试这样会导致“Highcharts Error#14 :字符串值发送到series.data,预计数字“

是否有可能在x和y轴上使用字符串值而不是数字的Highcharts泡沫/ 3d气泡图,或者有没有办法实现类似的东西?

任何指导,将不胜感激。

谢谢。

回答

7

您所谈论的只是分类轴 - 不需要任何技巧。

http://jsfiddle.net/jlbriggs/36zn2/1/

 xAxis: { 
      categories:['Project 1', 'Project 2', 'Project 3'] 
     }, 
     yAxis: { 
      categories:['User 1', 'User 2', 'User 3'] 
     }, 

在数据使用的数值是该类别的数组索引。

+0

非常感谢,这更容易使用! – 2013-04-10 14:18:46

+0

我使用的数据是这样的: series:[ { 数据:[x:3.5,y:4,z:5,颜色:'blue'}, {x:7,y:7,z :3,颜色: '蓝'}, {X:4,Y:8,Z:6,颜色: '蓝'} ] } ] 欲设置x AXYS像你说 xAxis:{ 类别:['Project 1','Project 2','Project 3'] }, 但dosent work显示x值。我能做些什么 – 2015-05-08 00:19:15

+0

如果你在你的x轴上使用类别,这些将会是你的x轴值。如果您想在数据中显示x值,请删除类别。 – jlbriggs 2015-05-08 12:19:57

1

我在这里做了些什么http://jsfiddle.net/36zn2/这应该对你有所帮助。

使用格式化函数计算x和y轴上的标签,该函数将数字项目代码和人员代码转换为数组中的文本。

var names = ["DAVE","JOHN"]; 
var projects = ["Project 1","Project 2"]; 


    xAxis: { 
     labels: {tickInterval:1, 
      formatter: function() { 
       return projects[this.value] 
      } 
     } 
    }, 

    yAxis: { 
     labels: { 
      formatter: function() { 
       return names[this.value] 
      } 
     } 
    }, 

如果你不能改变你的数据的格式,将可以通过数据阵列建立项目名称及工作人员姓名的映射来创建一个数字版本的数据加上映射阵列的迭代。

+0

伟大的解决方案,谢谢! – 2013-04-10 10:47:45