我在我的 C# 项目中使用 Google Charts API(使用 CefSharp 的 WebBrowser),它使用硬编码的数据,但每当我尝试使用 data.addRows 动态填充它时,我都会遇到问题( )。我需要一些简单的东西,比如外部 csv/json,所以可以在 C# 中运行(WebBrowser 真的很有限,有时有问题),但是每个解决方案都告诉我通过 php 服务器或更“复杂”的东西来做到这一点。 . 那么,有没有办法仅使用 JavaScript 和外部文件(或其他不同但可行的文件)来填充该图表?
这就是代码,如果有用的话:
<html>
<head>
<script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>
<script type="text/javascript">
google.charts.load('current', {packages:["orgchart"]});
google.charts.setOnLoadCallback(drawChart);
function drawChart() {
var data = new google.visualization.DataTable();
data.addColumn('string', 'Name');
data.addColumn('string', 'Manager');
data.addColumn('string', 'ToolTip');
// For each orgchart box, provide the name, manager, and tooltip to show.
data.addRows([['Alice', 'Mike', ''],['Bob', 'Jim', 'Bob Sponge'],['Carol', 'Bob', '']]);
// Create the chart.
var chart = new google.visualization.OrgChart(document.getElementById('chart_div'));
// Draw the chart, setting the allowHtml option to true for the tooltips.
chart.draw(data, {'allowHtml':true});
}
</script>
</head>
<body>
<div id="chart_div"></div>
</body>
</html>
Obs:CefSharp WebBrowser 只是将上面的代码作为一个普通的 HTML 文件调用,并在 C# 应用程序中运行它。
谢谢!