• <menu id="w2i4a"></menu>
  • 首頁 > 慧問 > 頻道

    Teechart儀表盤圖可不可以有兩個(gè)指針,分別指向不同的值?[TeeChart for .NET]

    發(fā)表于2019-05-10 回復(fù):0 查看:2461  |  
    Teechart儀表盤圖可不可以有兩個(gè)指針,分別指向不同的值?
    1個(gè)回答
    • 1970-01-01 08:00
      對(duì)于highcharts圖表組件來說,實(shí)現(xiàn)drill down 下鉆圖很簡單,因?yàn)閔ighcharts組件對(duì)其做了很好的封裝操作。只需要在series內(nèi)的data上面不斷地嵌套drilldown,和實(shí)現(xiàn)根據(jù)是否鉆取重繪highcharts圖表即可。 1、定義一系列的參數(shù)以及初始化 <pre class='brush: csharp'>//定義一系列的參數(shù)以及初始化 var colors = Highcharts.getOptions().colors, categories = ['MSIE', 'Firefox', 'Chrome', 'Safari', 'Opera'], name = '主流瀏覽器', data = [{ y: 55.11, color: colors[0], //一級(jí)鉆取 drilldown: { name: 'MSIE versions', categories: ['MSIE 6.0', 'MSIE 7.0', 'MSIE 8.0', 'MSIE 9.0'], data: [{ y: 10.85, color: colors[0], //二級(jí)鉆取 drilldown: { name: 'MSIE 6.0', categories: ['MSIE 6.001', 'MSIE 7.001', 'MSIE 8.001', 'MSIE 9.001'], data:[2,3,6,7], color: colors[0] } }, 7.35, 33.06, 2.81], color: colors[0] } }, { y: 21.63, color: colors[1], drilldown: { name: 'Firefox versions', categories: ['Firefox 2.0', 'Firefox 3.0', 'Firefox 3.5', 'Firefox 3.6', 'Firefox 4.0'], data: [0.20, 0.83, 1.58, 13.12, 5.43], color: colors[1] } }, { y: 11.94, color: colors[2], drilldown: { name: 'Chrome versions', categories: ['Chrome 5.0', 'Chrome 6.0', 'Chrome 7.0', 'Chrome 8.0', 'Chrome 9.0', 'Chrome 10.0', 'Chrome 11.0', 'Chrome 12.0'], data: [0.12, 0.19, 0.12, 0.36, 0.32, 9.91, 0.50, 0.22], color: colors[2] } }, { y: 7.15, color: colors[3], drilldown: { name: 'Safari versions', categories: ['Safari 5.0', 'Safari 4.0', 'Safari Win 5.0', 'Safari 4.1', 'Safari/Maxthon', 'Safari 3.1', 'Safari 4.1'], data: [4.55, 1.42, 0.23, 0.21, 0.20, 0.19, 0.14], color: colors[3] } }, { y: 2.14, color: colors[4], drilldown: { name: 'Opera versions', categories: ['Opera 9.x', 'Opera 10.x', 'Opera 11.x'], data: [0.12, 0.37, 1.65], color: colors[4] } }];</pre> 2、初始化圖表 <pre class='brush: csharp'> //初始化圖表 chart = new Highcharts.Chart({ chart: { renderTo: 'container', type: 'column' }, title: { text: '2012年五月份各大主流瀏覽器的市場(chǎng)份額對(duì)比圖' }, subtitle: { text: '點(diǎn)擊每一根柱子查看詳情 再次點(diǎn)擊返回上層' }, xAxis: { categories: categories }, yAxis: { title: { text: '市場(chǎng)總份額' } }, credits: { text: 'highcharts的博客', href: 'http://www.stepday.com/myblog/?highcharts', position: { align: 'right', //水平居右 verticalAlign: 'bottom' //垂直底部 }, style: { cursor: 'pointer', //鼠標(biāo)樣式為手型 color: '#FF0000', //字體顏色 fontSize: '10px' //字體大小 } }, plotOptions: { column: { cursor: 'pointer', point: { events: { click: function () { //根據(jù)是否進(jìn)入鉆取的狀態(tài)重繪不同的圖表 var drilldown = this.drilldown; if (drilldown) { // drill down setChart(drilldown.name, drilldown.categories, drilldown.data, drilldown.color); } else { // restore setChart(name, categories, data); } } } }, dataLabels: { enabled: true, color: colors[0], style: { fontWeight: 'bold' }, formatter: function () { return this.y + '%'; } } } }, tooltip: { formatter: function () { var point = this.point, s = this.x + ':<b>' + this.y + '% 市場(chǎng)份額</b><br/>'; if (point.drilldown) { s += '點(diǎn)擊查看 ' + point.category + ' 詳情'; } else { s += '點(diǎn)擊返回上層'; } return s; } }, series: [{ name: name, data: data, color: 'white' }], exporting: { enabled: false } }); });</pre> 3、重繪圖表的js方法 <pre class='brush: csharp'>//根據(jù)相關(guān)圖表參數(shù)重繪highcharts圖表 function setChart(name, categories, data, color) { //動(dòng)態(tài)修改Categories chart.xAxis[0].setCategories(categories, false); //移除之前序列 如果有多個(gè)可以用for逐個(gè)移除 chart.series[0].remove(false); //添加新的序列 chart.addSeries({ name: name, data: data, color: color || 'white' }, false); //重繪圖表 chart.redraw(); }</pre> **注意事項(xiàng):** 1、在data內(nèi)構(gòu)建drilldown時(shí)需要格外地注意結(jié)構(gòu),N多層都是可以的。 2、在處理plotOptions內(nèi)的click事件時(shí)需要根據(jù)下鉆情況調(diào)用重繪js方法。 3、就是重繪圖表的js方法編寫。 關(guān)于下鉆圖的種種這里都寫得很清楚了的,希望可以解決你問題,如果有疑問請(qǐng)隨時(shí)留言一起討論。
      1
      回復(fù) 舉報(bào)
    回復(fù)

    登錄 慧都網(wǎng)發(fā)表評(píng)論

    掃碼咨詢


    添加微信 立即咨詢

    電話咨詢

    客服熱線
    023-68661681

    TOP
    三级成人熟女影院,欧美午夜成人精品视频,亚洲国产成人乱色在线观看,色中色成人论坛 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();