Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/366.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Highcharts仪表图表正在舍入最大值_Javascript_Math_Highcharts - Fatal编程技术网

Javascript Highcharts仪表图表正在舍入最大值

Javascript Highcharts仪表图表正在舍入最大值,javascript,math,highcharts,Javascript,Math,Highcharts,当max设置为非常大的数字(如666772)时,就会出现问题。Highcharts将根据tickPixelInterval设置的值取数字并向下取整 如果我将tickPixelInterval值设置为接近0,则仪表图上的最大值开始接近666772,但仍为四舍五入。我希望min从0开始(它是这样做的),然后max是精确的数字(666772),甚至是向下取整的版本(667k) 有没有办法只在仪表表上显示min和max var gaugeOptions = { chart: {

max
设置为非常大的数字(如666772)时,就会出现问题。Highcharts将根据
tickPixelInterval
设置的值取数字并向下取整

如果我将
tickPixelInterval
值设置为接近0,则仪表图上的最大值开始接近666772,但仍为四舍五入。我希望
min
从0开始(它是这样做的),然后
max
是精确的数字(666772),甚至是向下取整的版本(667k)

有没有办法只在仪表表上显示
min
max

   var gaugeOptions = {

    chart: {
      type: 'solidgauge'
    },

    title: null,

    pane: {
      center: ['50%', '85%'],
      size: '140%',
      startAngle: -90,
      endAngle: 90,
      background: {
        backgroundColor: '#EEE',
        innerRadius: '60%',
        outerRadius: '100%',
        shape: 'arc'
      }
    },

    // the value axis
    yAxis: { 
      stops: [
        [0.1, '#DF5353'], // green
        [0.5, '#DDDF0D'], // yellow
        [0.9, 'green'] // red
      ],
      lineWidth: 0,
      minorTickInterval: null,
      tickPixelInterval: 400,
      tickWidth: 0,
      endOnTick: false,
      maxPadding: 0,
      title: {
        y: -70
      },
      labels: {
        y: 10,
        format: '{value}'
      }
    },

    credits: {
      enabled: false
    },

    tooltip: {
        enabled: false
    },

    plotOptions: {
      solidgauge: {
        dataLabels: {
          y: 5,
          borderWidth: 0,
          useHTML: true
        }
      }
    }

  };

  // Quarter1
  jQuery('#quarter1').highcharts(Highcharts.merge(gaugeOptions, {
    yAxis: {
      min: 0,
      max: 666772,
      title: {
        text: 'Quarter 1'
      }
    },

    series: [{
      name: 'Quarter 1',
      data: [50],
      dataLabels: {
        format: '<div style="text-align:center"><span style="font-size:25px;color:' +
          ((Highcharts.theme && Highcharts.theme.contrastTextColor) || 'black') + '">${y}</span><br/>' +
          '<span style="font-size:12px;color:silver">Quota</span><br/><span>Bonus Elegible</span></div>'
      }
    }]

  }));
var计量选项={
图表:{
类型:“solidgauge”
},
标题:空,
窗格:{
中心:['50%,'85%,],
大小:“140%”,
startAngle:-90,
端角:90,
背景:{
背景颜色:“#EEE”,
内半径:“60%”,
外层:“100%”,
形状:“圆弧”
}
},
//价值轴
亚克斯:{
停止:[
[0.1,#DF5353'],//绿色
[0.5,#DDDF0D'],//黄色
[0.9,'绿色']//红色
],
线宽:0,
minorTickInterval:null,
像素间隔:400,
宽度:0,
恩东蒂克:错,
maxPadding:0,
标题:{
y:-70
},
标签:{
y:10,
格式:“{value}”
}
},
学分:{
已启用:false
},
工具提示:{
已启用:false
},
打印选项:{
solidgauge:{
数据标签:{
y:5,
边框宽度:0,
useHTML:true
}
}
}
};
//四分之一
jQuery(“#quarter1”).highcharts(highcharts.merge(gaugeOptions{
亚克斯:{
分:0,,
最高:666772,
标题:{
文本:“第1季度”
}
},
系列:[{
名称:“第1季度”,
数据:[50],
数据标签:{
格式:“${y}
”+ “配额
奖金可发放” } }] }));
将endOnTick:false()添加到轴。比如说

 yAxis: {
  min: 0,
  max: 666772,
  title: {
    text: 'Quarter 1'
  },
  endOnTick:false
}

这是一个工作示例

我发现了另一种方法。如果将
tickPixelInterval:400,
替换为
tickAmount:2,
,则它将仅显示最小值和最大值。

使用此代码显示精确量的最小值和最大值

yAxis: {
min: 0,
max: 2602,
tickPositioner: function() {
  return [this.min, this.max];
} 

我不确定我是否理解这个问题。从我所看到的
max
是正确的。你是说y轴上的数字标签吗?