C# Google图表json数据未加载

C# Google图表json数据未加载,c#,ajax,json,asp.net-mvc,google-visualization,C#,Ajax,Json,Asp.net Mvc,Google Visualization,我正在使用ASP.NETMVC和GoogleCharts尝试生成一个包含两条数据记录的简单折线图。我正在成功地从数据库中提取数据,但数据没有显示在图表上。数据由两个记录组成,两个字段为:WeekOfEntry(日期时间)和Weight(十进制)。图表出现,但数据点不在那里。我猜我的数据格式不正确 以下是我的javascript: <script type="text/javascript"> //Load the Visualization API library and

我正在使用ASP.NETMVC和GoogleCharts尝试生成一个包含两条数据记录的简单折线图。我正在成功地从数据库中提取数据,但数据没有显示在图表上。数据由两个记录组成,两个字段为:
WeekOfEntry
(日期时间)和
Weight
(十进制)。图表出现,但数据点不在那里。我猜我的数据格式不正确

以下是我的javascript:

<script type="text/javascript">

    //Load the Visualization API library and the linechart library.
    google.load('visualization', '1.0', { 'packages': ['corechart'] });

    //Set a callback to run when the Google Visualization API is loaded.
    google.setOnLoadCallback(drawLoseATonLineChart);

    //Callback that creates and populates a data table, instantiates the line chart,
    //passes in the data, and draws it.
    function drawLoseATonLineChart() {

        var url = "@Url.Action("GetChartStatistics")";

        var jsonData = $.ajax({
            method: 'GET',
            url: url,
            dataType: 'JSON',
            async: false
        }).responseText;

        var data = new google.visualization.DataTable();
        data.addColumn('string', 'WeekOfEntry');
        data.addColumn('number', 'Weight');

        for (var i = 0; i < data.length; i++) {
            data.addRow([jsonData[i].WeekOfEntry, jsonData[i].Weight]);
        }

        var options = {
            title: 'Weight Progression',
            legend: {
                position: 'right',
                alignment: 'center'
            },
            vAxis: {
                title: 'Weight'
            },
            hAxis: {
                title: 'Week',
                slantedText: true,
                slantedTextAngle: 45

            },
            colors: ['E81A00']
        };

        var chart = new google.visualization.LineChart(document.getElementById('lose-a-ton-line-chart'));

        chart.draw(data, options);
    }
</script>
编辑:以下是我的JSON数据返回时的格式:

“[{“权重”:190.0,“WeekOfEntry”:“\/Date(1431921600000)\/”},{“权重”:121.0,“WeekOfEntry”:“\/Date(143252640000)\/”}”


你知道为什么没有加载数据吗

您是否尝试过arrayToDataTable函数,而不是循环处理JSON数据

var dataTableData = google.visualization.arrayToDataTable(JSON.parse(jsonData));

您是否尝试过arrayToDataTable函数,而不是遍历JSON数据

var dataTableData = google.visualization.arrayToDataTable(JSON.parse(jsonData));

您是否尝试过arrayToDataTable函数,而不是遍历JSON数据

var dataTableData = google.visualization.arrayToDataTable(JSON.parse(jsonData));

您是否尝试过arrayToDataTable函数,而不是遍历JSON数据

var dataTableData = google.visualization.arrayToDataTable(JSON.parse(jsonData));

您的for循环中有一个问题。这是你修改过的代码

//Load the Visualization API library and the linechart library.
    google.load('visualization', '1.0', { 'packages': ['corechart'] });

    //Set a callback to run when the Google Visualization API is loaded.
    google.setOnLoadCallback(drawLoseATonLineChart);

var url = "@Url.Action("GetChartStatistics")";

var result = $.ajax({
    method: 'GET',
    url: url,
    dataType: 'JSON',
    async: false
});
var jsonData = result.responseText;
var data = new google.visualization.DataTable();
data.addColumn('string', 'WeekOfEntry');
data.addColumn('number', 'Weight');

$.each(JSON.parse(jsonData), function (index, obj) {
    data.addRow([obj.WeekOfEntry, obj.Weight]);
});

var options = {
    title: 'Weight Progression',
    legend: {
        position: 'right',
        alignment: 'center'
    },
    vAxis: {
        title: 'Weight'
    },
    hAxis: {
        title: 'Week',
        slantedText: true,
        slantedTextAngle: 45

    },
    colors: ['E81A00']
};

var chart = new google.visualization.LineChart(document.getElementById('chart_div'));

chart.draw(data, options);


public JsonResult GetChartStatistics()
    {
        var lineChartData = new List<LineChartData>() { 
            new LineChartData() { WeekOfEntry = "sat", Weight = 1},
            new LineChartData() { WeekOfEntry = "sat1", Weight = 2},
            new LineChartData() { WeekOfEntry = "sat2", Weight = 3},
            new LineChartData() { WeekOfEntry = "sat3", Weight = 4},
        };

        return Json(lineChartData, JsonRequestBehavior.AllowGet);
    }
//加载可视化API库和折线图库。
load('visualization','1.0',{'packages':['corechart']});
//将回调设置为在加载Google Visualization API时运行。
setOnLoadCallback(drawLoseATonLineChart);
var url=“@url.Action”(“GetChartStatistics”);
var result=$.ajax({
方法:“GET”,
url:url,
数据类型:“JSON”,
异步:false
});
var jsonData=result.responseText;
var data=new google.visualization.DataTable();
data.addColumn('string','WeekOfEntry');
data.addColumn('number','Weight');
$.each(JSON.parse(jsonData),函数(index,obj){
data.addRow([obj.WeekOfEntry,obj.Weight]);
});
变量选项={
标题:“体重进展”,
图例:{
位置:'右',
对齐:“中心”
},
言辞:{
标题:“重量”
},
哈克斯:{
标题:"一周",,
是的,
倾斜角度:45
},
颜色:['E81A00']
};
var chart=new google.visualization.LineChart(document.getElementById('chart_div'));
图表绘制(数据、选项);
公共JsonResult GetChartStatistics()
{
var lineChartData=新列表(){
新建LineChartData(){WeekOfEntry=“sat”,权重=1},
新建LineChartData(){WeekOfEntry=“sat1”,权重=2},
新建LineChartData(){WeekOfEntry=“sat2”,权重=3},
新建LineChartData(){WeekOfEntry=“sat3”,权重=4},
};
返回Json(lineChartData,JsonRequestBehavior.AllowGet);
}

您的for循环中有一个问题。这是你修改过的代码

//Load the Visualization API library and the linechart library.
    google.load('visualization', '1.0', { 'packages': ['corechart'] });

    //Set a callback to run when the Google Visualization API is loaded.
    google.setOnLoadCallback(drawLoseATonLineChart);

var url = "@Url.Action("GetChartStatistics")";

var result = $.ajax({
    method: 'GET',
    url: url,
    dataType: 'JSON',
    async: false
});
var jsonData = result.responseText;
var data = new google.visualization.DataTable();
data.addColumn('string', 'WeekOfEntry');
data.addColumn('number', 'Weight');

$.each(JSON.parse(jsonData), function (index, obj) {
    data.addRow([obj.WeekOfEntry, obj.Weight]);
});

var options = {
    title: 'Weight Progression',
    legend: {
        position: 'right',
        alignment: 'center'
    },
    vAxis: {
        title: 'Weight'
    },
    hAxis: {
        title: 'Week',
        slantedText: true,
        slantedTextAngle: 45

    },
    colors: ['E81A00']
};

var chart = new google.visualization.LineChart(document.getElementById('chart_div'));

chart.draw(data, options);


public JsonResult GetChartStatistics()
    {
        var lineChartData = new List<LineChartData>() { 
            new LineChartData() { WeekOfEntry = "sat", Weight = 1},
            new LineChartData() { WeekOfEntry = "sat1", Weight = 2},
            new LineChartData() { WeekOfEntry = "sat2", Weight = 3},
            new LineChartData() { WeekOfEntry = "sat3", Weight = 4},
        };

        return Json(lineChartData, JsonRequestBehavior.AllowGet);
    }
//加载可视化API库和折线图库。
load('visualization','1.0',{'packages':['corechart']});
//将回调设置为在加载Google Visualization API时运行。
setOnLoadCallback(drawLoseATonLineChart);
var url=“@url.Action”(“GetChartStatistics”);
var result=$.ajax({
方法:“GET”,
url:url,
数据类型:“JSON”,
异步:false
});
var jsonData=result.responseText;
var data=new google.visualization.DataTable();
data.addColumn('string','WeekOfEntry');
data.addColumn('number','Weight');
$.each(JSON.parse(jsonData),函数(index,obj){
data.addRow([obj.WeekOfEntry,obj.Weight]);
});
变量选项={
标题:“体重进展”,
图例:{
位置:'右',
对齐:“中心”
},
言辞:{
标题:“重量”
},
哈克斯:{
标题:"一周",,
是的,
倾斜角度:45
},
颜色:['E81A00']
};
var chart=new google.visualization.LineChart(document.getElementById('chart_div'));
图表绘制(数据、选项);
公共JsonResult GetChartStatistics()
{
var lineChartData=新列表(){
新建LineChartData(){WeekOfEntry=“sat”,权重=1},
新建LineChartData(){WeekOfEntry=“sat1”,权重=2},
新建LineChartData(){WeekOfEntry=“sat2”,权重=3},
新建LineChartData(){WeekOfEntry=“sat3”,权重=4},
};
返回Json(lineChartData,JsonRequestBehavior.AllowGet);
}

您的for循环中有一个问题。这是你修改过的代码

//Load the Visualization API library and the linechart library.
    google.load('visualization', '1.0', { 'packages': ['corechart'] });

    //Set a callback to run when the Google Visualization API is loaded.
    google.setOnLoadCallback(drawLoseATonLineChart);

var url = "@Url.Action("GetChartStatistics")";

var result = $.ajax({
    method: 'GET',
    url: url,
    dataType: 'JSON',
    async: false
});
var jsonData = result.responseText;
var data = new google.visualization.DataTable();
data.addColumn('string', 'WeekOfEntry');
data.addColumn('number', 'Weight');

$.each(JSON.parse(jsonData), function (index, obj) {
    data.addRow([obj.WeekOfEntry, obj.Weight]);
});

var options = {
    title: 'Weight Progression',
    legend: {
        position: 'right',
        alignment: 'center'
    },
    vAxis: {
        title: 'Weight'
    },
    hAxis: {
        title: 'Week',
        slantedText: true,
        slantedTextAngle: 45

    },
    colors: ['E81A00']
};

var chart = new google.visualization.LineChart(document.getElementById('chart_div'));

chart.draw(data, options);


public JsonResult GetChartStatistics()
    {
        var lineChartData = new List<LineChartData>() { 
            new LineChartData() { WeekOfEntry = "sat", Weight = 1},
            new LineChartData() { WeekOfEntry = "sat1", Weight = 2},
            new LineChartData() { WeekOfEntry = "sat2", Weight = 3},
            new LineChartData() { WeekOfEntry = "sat3", Weight = 4},
        };

        return Json(lineChartData, JsonRequestBehavior.AllowGet);
    }
//加载可视化API库和折线图库。
load('visualization','1.0',{'packages':['corechart']});
//将回调设置为在加载Google Visualization API时运行。
setOnLoadCallback(drawLoseATonLineChart);
var url=“@url.Action”(“GetChartStatistics”);
var result=$.ajax({
方法:“GET”,
url:url,
数据类型:“JSON”,
异步:false
});
var jsonData=result.responseText;
var data=new google.visualization.DataTable();
data.addColumn('string','WeekOfEntry');
data.addColumn('number','Weight');
$.each(JSON.parse(jsonData),函数(index,obj){
data.addRow([obj.WeekOfEntry,obj.Weight]);
});
变量选项={
标题:“体重进展”,
图例:{
位置:'右',
对齐:“中心”
},
言辞:{
标题:“重量”
},
哈克斯:{
标题:"一周",,
是的,
倾斜角度:45
},
颜色:['E81A00']
};
var chart=new google.visualization.LineChart(document.getElementById('chart_div'));
图表绘制(数据、选项);
公共JsonResult GetChartStatistics()
{
var lineChartData=新列表(){
新建LineChartData(){WeekOfEntry=“sat”,权重=1},
新建LineChartData(){WeekOfEntry=“sat1”,权重=2},
新建LineChartData(){WeekOfEntry=“sat2”,权重=3},
新建LineChartData(){WeekOfEntry=“sat3”,权重=4},
};
返回Json(lineChartData,JsonRequestBehavior.AllowGet);
}

您的for l中有一个问题