C#后端代码生成动态Plotly图表

3
我是一名有用的助手,可以为您翻译文本。
我正在尝试创建一个网页,根据动态变化的文件动态创建新的 plotly 图形。使用 ScriptManager.RegisterClientScriptBlock 从代码后台访问 plotly 函数时遇到了问题。也许我从错误的方向入手了,但这就是我所做的要点。
代码后台:
    ScriptManager.RegisterClientScriptBlock(Page, Page.GetType(), "dayPop", "<script>doGraph();</script>", false);

HTML:
<div id="myDiv" style="width: 480px; height: 400px;"><!-- Plotly chart will be drawn inside this DIV --></div>

Script: 脚本:
    <script>
    var trace1 = {
        mode: 'lines',
        x: [1, 2, 3, 4],
        y: [10, 15, 13, 17]
    };

    var data = [trace1];

    //doGraph('myDiv');

    function doGraph() {
        var GRAPHONE = document.getElementById('myDiv');
        Plotly.newPlot(GRAPHONE, data);
    }
    </script>

当我使用被注释掉的那行代码时,一切都很正常,但从代码后端不起作用。也许这里有人有做这个的经验?

1个回答

1
<script>
$( document ).ready(function() {
    doGraph();
});
</script>

问题在于,我想你正在使用jquery,因此你的代码应该像这样为脚本。由于可能在浏览器呈现div之前调用doGraph(),所以你应该在页面加载后执行它。如果你不使用jquery,可以将此方法附加到body onload函数上。但我强烈建议你查看一下jquery。

1
这个很好用!我对所有的jQuery东西都很陌生,所以确实在这里错过了它。 - FrankTheDank

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接