首页 > 解决方案 > 如何在单元格单击时单击融合图表热图的事件?

问题描述

我对融合热图上的点击事件有疑问:

我需要一个点击事件来获取单元格点击上的融合图表热图,例如 http://jsfiddle.net/robschmuecker/3UWaA/3/ 这是代码。

FusionCharts.ready(function() {
  var salesHMChart = new FusionCharts({
    type: 'heatmap',
    renderAt: 'chart-container',
    dataFormat: 'json',
    dataSource: {
      "chart": {
        "caption": "Top Smartphone Ratings",
        "xAxisName": "Features",
        "yAxisName": "Model",
        "theme": "fusion"
      },
      "dataset": jsondata,
        "events": {

                "dataPlotClick": function (eventObj, dataObj) {
                console.log(eventObj);
                }
                }
    }
  });
  salesHMChart.render();
});

任何建议如何解决这个问题?

谢谢

标签: javascriptheatmapfusioncharts

解决方案


将数据源作为单独的对象传递到图表的生命周期后,需要附加事件监听器,请查看示例以供参考

FusionCharts.ready(function() {
  var salesHMChart = new FusionCharts({
    type: 'heatmap',
    renderAt: 'chart-container',
    width: '100%',
    height: '350',
    dataFormat: 'json',
    dataSource: {
      "chart": {
        "caption": "Top Smartphone Ratings",
        "subcaption": "By Features",
        "xAxisName": "Features",
        "yAxisName": "Model",
        "showplotborder": "1",
        "xAxisLabelsOnTop": "1",
        "plottooltext": "<div id='nameDiv' style='font-size: 12px; border-bottom: 1px dashed #666666; font-weight:bold; padding-bottom: 3px; margin-bottom: 5px; display: inline-block; color: #888888;' >$rowLabel :</div>{br}Rating : <b>$dataValue</b>{br}$columnLabel : <b>$tlLabel</b>{br}<b>$trLabel</b>",

        //Cosmetics
        "showValues": "1",
        "showBorder": "0",
        "bgColor": "#ffffff",
        "showShadow": "0",
        "usePlotGradientColor": "0",
        "toolTipColor": "#ffffff",
        "toolTipBorderThickness": "0",
        "toolTipBgColor": "#000000",
        "toolTipBgAlpha": "80",
        "toolTipBorderRadius": "2",
        "toolTipPadding": "5",
        "theme": "fusion"
      },
      "dataset": [{
        "data": [{
            "rowid": "Samsung Galaxy S5",
            "columnid": "Processor",
            "value": "8.7",
            "tllabel": "Quad Core 2.5 GHz",
            "trlabel": "OS : Android 4.4 Kitkat"
          },
          {
            "rowid": "Samsung Galaxy S5",
            "columnid": "Screen Size",
            "value": "8.5",
            "tllabel": "5.1 inch",
            "trlabel": "AMOLED screen"
          },
          {
            "rowid": "Samsung Galaxy S5",
            "columnid": "Price",
            "value": "9.3",
            "tllabel": "$600"
          },
          {
            "rowid": "Samsung Galaxy S5",
            "columnid": "Battery Backup",
            "value": "9.7",
            "tllabel": "29 Hrs",
            "trlabel": "Battery : 2800 MAH"
          },
          {
            "rowid": "Samsung Galaxy S5",
            "columnid": "Camera",
            "value": "8",
            "tllabel": "16 MP",
            "trlabel": "Front Camera : 2.1 MP"
          },
          {
            "rowid": "HTC One (M8)",
            "columnid": "Processor",
            "value": "9.2",
            "tllabel": "Quad Core 2.3 GHz",
            "trlabel": "OS : Android 4.4 Kitkat"
          },
          {
            "rowid": "HTC One (M8)",
            "columnid": "Screen Size",
            "value": "8.3",
            "tllabel": "5 inch",
            "trlabel": "LCD screen"
          },
          {
            "rowid": "HTC One (M8)",
            "columnid": "Price",
            "value": "7.3",
            "tllabel": "$600"
          },
          {
            "rowid": "HTC One (M8)",
            "columnid": "Battery Backup",
            "value": "8.8",
            "tllabel": "20 Hrs",
            "trlabel": "Battery : 2600 MAH"
          },
          {
            "rowid": "HTC One (M8)",
            "columnid": "Camera",
            "value": "8.7",
            "tllabel": "4 MP",
            "trlabel": "Front Camera : 5 MP"
          },
          {
            "rowid": "Apple iPhone 5S",
            "columnid": "Processor",
            "value": "9.1",
            "tllabel": "Dual Core",
            "trlabel": "OS : iOS 7"
          },
          {
            "rowid": "Apple iPhone 5S",
            "columnid": "Screen Size",
            "value": "8.6",
            "tllabel": "4 inch",
            "trlabel": "Retina LCD screen"
          },
          {
            "rowid": "Apple iPhone 5S",
            "columnid": "Price",
            "value": "7.2",
            "tllabel": "$649"
          },
          {
            "rowid": "Apple iPhone 5S",
            "columnid": "Battery Backup",
            "value": "8.4",
            "tllabel": "10 Hrs",
            "trlabel": "Battery : 1560 MAH"
          },
          {
            "rowid": "Apple iPhone 5S",
            "columnid": "Camera",
            "value": "9.5",
            "tllabel": "8 MP",
            "trlabel": "Front Camera : 1.2 MP"
          },
          {
            "rowid": "Nokia Lumia 1520",
            "columnid": "Processor",
            "value": "8.8",
            "tllabel": "Quad Core 2.2 GHz",
            "trlabel": "OS: Windows Phone 8"
          },
          {
            "rowid": "Nokia Lumia 1520",
            "columnid": "Screen Size",
            "value": "9.1",
            "tllabel": "6 inch",
            "trlabel": "LCD screen"
          },
          {
            "rowid": "Nokia Lumia 1520",
            "columnid": "Price",
            "value": "9.7",
            "tllabel": "$470"
          },
          {
            "rowid": "Nokia Lumia 1520",
            "columnid": "Battery Backup",
            "value": "9.2",
            "tllabel": "27 Hrs",
            "trlabel": "Battery : 3400 MAH"
          },
          {
            "rowid": "Nokia Lumia 1520",
            "columnid": "Camera",
            "value": "8.1",
            "tllabel": "20MP",
            "trlabel": "Front Camera : 1.2 MP"
          }
        ]
      }],
      "colorrange": {
        "gradient": "0",
        "minvalue": "0",
        "code": "E24B1A",
        "startlabel": "Poor",
        "endlabel": "Good",
        "color": [{
            "code": "E24B1A",
            "minvalue": "1",
            "maxvalue": "5",
            "label": "Bad"
          },
          {
            "code": "F6BC33",
            "minvalue": "5",
            "maxvalue": "8.5",
            "label": "Average"
          },
          {
            "code": "6DA81E",
            "minvalue": "8.5",
            "maxvalue": "10",
            "label": "Good"
          }
        ]
      }
    },
    events: {
      "dataPlotClick": function(eventObj) {
        console.log(eventObj);
      }
    }
  });
  salesHMChart.render();
});

http://jsfiddle.net/fd9g5xz0/


推荐阅读