【发布时间】:2019-12-03 20:33:27
【问题描述】:
我想知道是否有人可以为我指明正确的方向。我有一个名为“VwDashBoard_Areachart”的视图查询,其中包含以下五个字段以及来自 MSSQL 服务器的一些信息:
+-----+------+-----+-----+-----+
| ID | Year | OC | SS | ST |
+-----+------+-----+-----+-----+
| 1 | 2017 | 1 | 1 | 3 |
| 2 | 2018 | 1 | 1 | 2 |
| 3 | 2019 | 1 | 1 | 2 |
+-----+------+-----+-----+-----+
我想在莫里斯面积图中显示数据。我在下面的控制器中有以下代码:
public ActionResult AreaChart()
{
var mc = from mon in db.VwDashBoard_Areachart
select new
{
year = mon.Year,
value = mon.SS,
value1 = mon.OC,
value2 = mon.ST,
};
return Json(mc, JsonRequestBehavior.AllowGet);
}
这是我的脚本:
$(document).ready(function () {
$.get('@Url.Action("AreaChart")', function (result) {
new Morris.Area({
// ID of the element in which to draw the chart.
element: 'morris-area-charts',//'myfirstchart',
data: result,
xkey: 'year',
ykeys: ['value', 'value1', 'value2'],
labels: ['OC', 'SS', 'ST'],
pointFillColors: ['#ffffff'],
lineColors: ['#ccc', '#7a6fbe', '#28bbe3'],
redraw: true,
lineWidth: [1, 1, 1],
pointSize: 1,
});
});
});
这是剃须刀的代码:
<div class="panel-body">
<div id="morris-area-charts"></div>
</div>
现在,当我运行脚本时,它会显示面积图,但图表显示看起来不正确,并且 x 轴上没有显示年份。但是,如果我将图表显示为条形图,同样的结果看起来不错。
我想知道我是否忘记在脚本或控制器中包含某些内容,或者是否需要修改视图查询中的数据布局表示才能正确显示面积图。
我尝试输入一些静态数据并且面积图正确显示。问题是当我试图从数据库中获取数据时。任何帮助将不胜感激。
【问题讨论】:
标签: morris.js