欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

echarts統(tǒng)計(jì)x軸區(qū)間的數(shù)值實(shí)例代碼詳解

 更新時(shí)間:2019年07月07日 14:38:06   作者:blacker50  
這篇文章主要介紹了echarts統(tǒng)計(jì)x軸區(qū)間的數(shù)值,本文給出了實(shí)現(xiàn)實(shí)例及實(shí)例代碼,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

有時(shí)我們需要統(tǒng)計(jì)自定義echarts圖,統(tǒng)計(jì)x軸區(qū)間的y軸數(shù)量。

思路是利用echarts的自定義配置:option.series[i].type='custom'中的renderItem(params, api)函數(shù)進(jìn)行處理,這里包括了兩個(gè)參數(shù):params是對(duì)應(yīng)每一個(gè)dataItem的數(shù)據(jù)信息;api是可調(diào)用的方法(api.value()和api.coord())。詳情可以查看官方文檔。

以下是改自官方實(shí)例: https://www.echartsjs.com/examples/editor.html?c=bar-histogram ,把以下引用 ecStat.js來(lái)處理數(shù)據(jù)的部分修改成自己拼裝成需要的格式

var bins = ecStat.histogram(girth);
var min = Infinity;
var max = -Infinity;
edata = echarts.util.map(bins.data, function (item, index) {
 var x0 = bins.bins[index].x0;
 var x1 = bins.bins[index].x1;
 interval = x1 - x0;
 min = Math.min(min, x0);  
  max = Math.max(max, x1);
  return [x0, x1, item[1]];
});

原因是引用ecStat.js處理數(shù)據(jù)時(shí),有時(shí)出現(xiàn)以下錯(cuò)誤,暫時(shí)沒(méi)找到解決方法。

改寫(xiě)后的代碼顯示效果如下:

<div id="main1" style="width: 1000px;height: 500px"></div>
<script type="text/javascript">
 $(function(){
  generateChart();
 });
 function generateChart(){
  var myChart1 = echarts.init(document.getElementById('main1'));
  var girth = [19, 26.4, 34, 41.4, 42.4, 42.7, 42.9, 43.1, 43.2, 43.3, 43.3, 43.3, 44.9, 45.4, 46.2, 46.7, 48, 48, 49.1, 54.2];
  //自定義拼裝數(shù)據(jù)方式
     var edata = new Array();
  var scopeMin = 0;
  var scopeMax = 100;
  var interval = (scopeMax-scopeMin)/10;
  var tmin = scopeMin;
  while(tmin < scopeMax){
   var x0 = tmin; 
   var x1 = tmin+interval;
   var samplenum = 0;
   for(var i=0;i<girth.length;i++){
    if((scopeMin == x0 && girth[i] < x0) || (x0 <= girth[i] && x1 > girth[i])
     ||(scopeMin == x1 && girth[i] > x1)) {
     samplenum++;    
    }
   }
   tmin += interval;
   edata.push([x0, x1, samplenum]);
  }
  var option = {
   color: ['rgb(25, 183, 207)'],
   grid: {
    top: 80,
    containLabel: true
   },
   xAxis: [{
    type: 'value',
    min: scopeMin,
    max: scopeMax,
    interval: interval
   }],
   yAxis: [{
    type: 'value',
   }],
   series: [{
    name: 'height',
    type: 'custom',
    renderItem: renderItem,
    label: {
     normal: {
      show: true,
      position: 'top'
     }
    },
    encode: {
     x: [0, 1],
     y: 2,
     tooltip: 2,
     label: 2
    },
    // data: data
    data: edata
   }]
  };
  myChart1.setOption(option);
  window.onresize = function () {
   myChart1.resize();
  }
 }
 function renderItem(params, api) {
  var yValue = api.value(2);
  var start = api.coord([api.value(0), yValue]);
  var size = api.size([api.value(1) - api.value(0), yValue]);
  var style = api.style();
  return {
   type: 'rect',
   shape: {
    x: start[0] + 1,
    y: start[1],
    width: size[0] - 2,
    height: size[1]
   },
   style: style
  };
 }
</script>

總結(jié)

以上所述是小編給大家介紹的echarts統(tǒng)計(jì)x軸區(qū)間的數(shù)值實(shí)例代碼詳解,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)歡迎給我留言,小編會(huì)及時(shí)回復(fù)大家的!

相關(guān)文章

  • 微信小程序開(kāi)發(fā)實(shí)現(xiàn)消息推送

    微信小程序開(kāi)發(fā)實(shí)現(xiàn)消息推送

    這篇文章主要為大家詳細(xì)介紹了微信小程序開(kāi)發(fā)實(shí)現(xiàn)消息推送,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-05-05
  • javascript運(yùn)動(dòng)詳解

    javascript運(yùn)動(dòng)詳解

    本文給大家詳細(xì)介紹下如何使用javascript來(lái)實(shí)現(xiàn)運(yùn)動(dòng)效果,總結(jié)的十分全面,附上各種效果的詳細(xì)示例和演示圖,有需要的小伙伴可以參考下。
    2015-07-07
  • javascript實(shí)現(xiàn)阻止iOS APP中的鏈接打開(kāi)Safari瀏覽器

    javascript實(shí)現(xiàn)阻止iOS APP中的鏈接打開(kāi)Safari瀏覽器

    這篇文章主要介紹了javascript實(shí)現(xiàn)阻止iOS APP中的鏈接打開(kāi)Safari瀏覽器,這個(gè)IOS APP一般是Web APP,否則沒(méi)法使用本文的代碼,需要的朋友可以參考下
    2014-06-06
  • JS性能優(yōu)化實(shí)現(xiàn)方法及優(yōu)點(diǎn)進(jìn)行

    JS性能優(yōu)化實(shí)現(xiàn)方法及優(yōu)點(diǎn)進(jìn)行

    這篇文章主要介紹了JS性能優(yōu)化實(shí)現(xiàn)方法及優(yōu)點(diǎn)進(jìn)行,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-08-08
  • JavaScript對(duì)象類(lèi)型轉(zhuǎn)換的分類(lèi)及步驟詳解

    JavaScript對(duì)象類(lèi)型轉(zhuǎn)換的分類(lèi)及步驟詳解

    這篇文章主要為大家介紹了JavaScript對(duì)象類(lèi)型轉(zhuǎn)換的分類(lèi)及步驟詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-05-05
  • Mac/Windows下如何安裝Node.js

    Mac/Windows下如何安裝Node.js

    在Mac、Ubuntu、Windows、Centos下如何安裝Node.js,想必有一些朋友還不會(huì)吧,本文整理了一些,需要的朋友可以參考下
    2013-11-11
  • js中Array.forEach跳出循環(huán)的方法實(shí)例

    js中Array.forEach跳出循環(huán)的方法實(shí)例

    相信大家都知道forEach適用于只是進(jìn)行集合或數(shù)組遍歷,for則在較復(fù)雜的循環(huán)中效率更高,下面這篇文章主要給大家介紹了關(guān)于js中Array.forEach跳出循環(huán)的相關(guān)資料,需要的朋友可以參考下
    2021-09-09
  • JavaScript canvas實(shí)現(xiàn)代碼雨效果

    JavaScript canvas實(shí)現(xiàn)代碼雨效果

    這篇文章主要為大家詳細(xì)介紹了JavaScript canvas實(shí)現(xiàn)代碼雨效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-06-06
  • JavaScript 序列化對(duì)象實(shí)現(xiàn)代碼

    JavaScript 序列化對(duì)象實(shí)現(xiàn)代碼

    JavaScript序列化對(duì)象實(shí)現(xiàn)代碼,需要的朋友可以參考下。
    2009-12-12
  • js深拷貝和淺拷貝的深入講解

    js深拷貝和淺拷貝的深入講解

    深拷貝和淺拷貝是面試中經(jīng)常出現(xiàn)的,主要考察對(duì)基本類(lèi)型和引用類(lèi)型的理解深度,這篇文章主要給大家介紹了關(guān)于js深拷貝和淺拷貝的相關(guān)資料,需要的朋友可以參考下
    2022-05-05

最新評(píng)論