Гиперссылки при нажатии на узлы Google Sankey

Есть ли способ открыть PDF-файл во всплывающем окне с заданного URL-адреса при нажатии узла на диаграмме Санки визуализации Google?

У меня есть скрипт здесь с всплывающим сообщением, но я не знаю, как отображать страницу внутри этого окно, ни где определить, какое изображение идет с каким узлом в sankey def'ns.

  google.setOnLoadCallback(drawChart);

  function drawChart() {
    var data = new google.visualization.DataTable();
    data.addColumn('string', 'From');
    data.addColumn('string', 'To');
    data.addColumn('number', 'Weight');
    data.addRows([
      [ 'A', 'X', 5 ],
      [ 'A', 'Y', 7 ],
      [ 'A', 'Z', 6 ],
      [ 'B', 'X', 2 ],
      [ 'B', 'Y', 9 ],
      [ 'B', 'Z', 4 ]
    ]);

    // Sets chart options.
    var options = {
      width: 600,
        sankey: {
            node: {
                interactivity: true
            }
        }
    };

    // Instantiates and draws our chart, passing in some options.
    var chart = new google.visualization.Sankey(document.getElementById('sankey_basic'));
    chart.draw(data, options);
      google.visualization.events.addListener(chart, 'select', function() {
          var sel = chart.getSelection();
          if (sel.length)
                var href = "http://www.google.com"

              alert('You selected node "' + sel[0].name + '"');
      });
  }

person DeltaG    schedule 21.03.2017    source источник


Ответы (1)


вы можете использовать оператор switch, чтобы определить, какой узел был выбран

затем используйте window.open, чтобы показать PDF и т. д.

google.visualization.events.addListener(chart, 'select', function() {
  var sel = chart.getSelection();
  if (sel.length) {
    switch (sel[0].name) {
      case 'A':
        window.open('http://www.bing.com');
        break;

      case 'B':
        window.open('http://www.yahoo.com');
        break;

      default:
        window.open('http://www.google.com');
    }
  }
});

см. разветвленную скрипку...

person WhiteHat    schedule 21.03.2017