图表js,动态加载数据
本文关键字:加载 数据 动态 js 图表 | 更新日期: 2023-09-27 18:15:10
我试图从我的ViewModel加载数据到图表Js。看来我很接近,但可能我的javascript语法有点偏离。
我的模型包含一个整数列表。目前,硬编码为三个不同的整型。有没有人做过类似的事情,我正在寻找实现?
这是我的观点:
@model CRADV.ViewModel.RejectMessageReportViewModel
@{
List<int> data = Model.reject_count;
var labels = Model.messages;
var colors = new[] { "#FF6384", "#36A2EB", "#FFCE56" };
}
<div class="col-lg-4">
<canvas id="pie-chart" width="400" height="400"></canvas>
@Model.reject_count.FirstOrDefault()
</div>
<script type="text/javascript">
var data = '@data.ToList()';
var ctx = document.getElementById("pie-chart");
var myPieChart = new Chart(ctx, {
type: 'pie',
data: {
labels: [
"#FF6384",
"#36A2EB",
"#FFCE56"
],
datasets: [
{
data: data,
backgroundColor: [
"#FF6384",
"#36A2EB",
"#FFCE56"
],
hoverBackgroundColor: [
"#FF6384",
"#36A2EB",
"#FFCE56"
]
}]
}
});
</script>
看起来您正在尝试将。net整数列表分配给jQuery函数。当你混合了两种语言时,这是行不通的。你需要先将List序列化为JSON。
您可以使用Newtonsoft Json nuget包实现此功能:
using Newtonsoft.Json;
var data= JsonConvert.SerializeObject(Model.reject_count);