Javascript 为什么不是';我的JQuery Flot不工作吗?

Javascript 为什么不是';我的JQuery Flot不工作吗?,javascript,jquery,flot,Javascript,Jquery,Flot,我试图使用JQuery来使用Flot绘制趋势图,但什么都没有发生 <head runat="server"> <title>Phenomena Tactical Detail</title> <link href="../Styles/MainStyle.css" rel="stylesheet" type="text/css" /> <script src="../Scripts/jquery-1.10.2.js"

我试图使用JQuery来使用Flot绘制趋势图,但什么都没有发生

<head runat="server">
    <title>Phenomena Tactical Detail</title>
    <link href="../Styles/MainStyle.css" rel="stylesheet" type="text/css" />
    <script src="../Scripts/jquery-1.10.2.js" type="text/javascript"></script>
    <script src="../Scripts/jquery.flot.js" type="text/javascript"></script>

    <script type="text/javascript" language="javascript">
        $(document).ready(function () {
            var data = [[0, 3], [4, 8], [10, 2]];
            var area = $("#plotArea");
            $.plot(area, data);
        });
    </script>
</head>
新建: 他们写的文档的另一部分似乎我错了:

请注意,为了简化Flot中的内部逻辑,x和y值都必须是数字(即使指定了时间序列,请参见下面的操作方法)。这是一个常见的问题,因为您可能会从数据库检索数据并将其直接序列化为JSON,而不会注意到错误的类型。如果您遇到神秘错误,请再次检查您输入的是数字而不是字符串

您所犯的真正错误似乎是数据参数需要是一个点数组(系列)。因此,请再次从数据数组中删除引号,然后使用如下绘图函数:

var data = [[0, 3], [4, 8], [10, 2]];
$.plot(area, [ data ]);
旧版: 根据flot的定义,你必须使用字符串而不是数字

实际上,Flot喜欢JSON数据,只是格式不对。仔细检查您输入的不是字符串而不是数字,如[[“0”、“-2.13”]、[“5”、“4.3”]。这是最常见的错误,错误可能不会立即显示,因为Javascript可以自动进行一些转换

因此,您应该将阵列更改为:

var data = [["0", "3"], ["4", "8"], ["10", "2"]];

您的数据数组没有问题

尝试将脚本更改为:

<script type="text/javascript" language="javascript">
$(document).ready(function () {
    var data = [[0, 3], [4, 8], [10, 2]];
    var area = "#plotArea";
    $.plot(area, [data]);
});
</script>

希望它能正常工作。

谢谢。但仍然是一个空div。似乎文档和常见问题有点误导。我已经根据这个更新了我的答案。
var data = [["0", "3"], ["4", "8"], ["10", "2"]];
<script type="text/javascript" language="javascript">
$(document).ready(function () {
    var data = [[0, 3], [4, 8], [10, 2]];
    var area = "#plotArea";
    $.plot(area, [data]);
});
</script>
<div class="inCenter">
    <div class="demo-container">
        <div id="plotArea" class="demo-placeholder"></div>
    </div>
    <br />
    <asp:Label ID="trendTimeLabel" runat="server"></asp:Label>
</div>
.demo-container {
    box-sizing: border-box;
    width: 850px;
    height: 450px;
    padding: 20px 15px 15px 15px;
    margin: 15px auto 30px auto;
    border: 1px solid #ddd;
    background: #fff;
    background: linear-gradient(#f6f6f6 0, #fff 50px);
    background: -o-linear-gradient(#f6f6f6 0, #fff 50px);
    background: -ms-linear-gradient(#f6f6f6 0, #fff 50px);
    background: -moz-linear-gradient(#f6f6f6 0, #fff 50px);
    background: -webkit-linear-gradient(#f6f6f6 0, #fff 50px);
    box-shadow: 0 3px 10px rgba(0,0,0,0.15);
    -o-box-shadow: 0 3px 10px rgba(0,0,0,0.1);
    -ms-box-shadow: 0 3px 10px rgba(0,0,0,0.1);
    -moz-box-shadow: 0 3px 10px rgba(0,0,0,0.1);
    -webkit-box-shadow: 0 3px 10px rgba(0,0,0,0.1);
}

.demo-placeholder {
    width: 100%;
    height: 100%;
    font-size: 14px;
    line-height: 1.2em;
}