Morris 图表中的有限颜色
limited color in Morris chart
我想在我的 MVC 视图中绘制 Morris 图表,但我的数据是动态的,我有 30 多个项目,但莫里斯图表只是用 12 种颜色给图表上色,并重复剩余的切片和我刚刚创建的图例对于 12 种颜色,显示颜色就像 o 附上的图像一样。如何为我的图表使用无限颜色?!
var ChartBlockShopFirstMelt = new Morris.Donut({
element: 'MychartViewArea',
parseTime: false,
dataLabelsPosition: 'outside',
resize: true,
//donutType: 'pie',
dataLabels: true,
hidehover: 'auto',
//colors: [
// '#882222'
// ],
data: [
@foreach(var item in ListAreaAndSheare )
{
@:{ label: "@item.Lable", value: "@Math.Round(item.VALUE,2)" },
}
],
});
ChartBlockShopFirstMelt.options.data.forEach(function (label, i) {
var lgn = $('<span style=margin-left:10px;background-color:' + ChartBlockShopFirstMelt.options.colors[i] + '> </span><br>').text(label['label']).prepend();
$("#legendFirstMelt").append(lgn);
});
您需要在选项 colors 中定义一组颜色。
然后对于您的图例,您可以使用取模运算符 (%) 来显示该数组中的正确颜色。
在我下面的例子中:
color_morris是颜色数组
i是解析出来的索引
color_morris[i%color_morris.length]
我想在我的 MVC 视图中绘制 Morris 图表,但我的数据是动态的,我有 30 多个项目,但莫里斯图表只是用 12 种颜色给图表上色,并重复剩余的切片和我刚刚创建的图例对于 12 种颜色,显示颜色就像 o 附上的图像一样。如何为我的图表使用无限颜色?!
var ChartBlockShopFirstMelt = new Morris.Donut({
element: 'MychartViewArea',
parseTime: false,
dataLabelsPosition: 'outside',
resize: true,
//donutType: 'pie',
dataLabels: true,
hidehover: 'auto',
//colors: [
// '#882222'
// ],
data: [
@foreach(var item in ListAreaAndSheare )
{
@:{ label: "@item.Lable", value: "@Math.Round(item.VALUE,2)" },
}
],
});
ChartBlockShopFirstMelt.options.data.forEach(function (label, i) {
var lgn = $('<span style=margin-left:10px;background-color:' + ChartBlockShopFirstMelt.options.colors[i] + '> </span><br>').text(label['label']).prepend();
$("#legendFirstMelt").append(lgn);
});
您需要在选项 colors 中定义一组颜色。
然后对于您的图例,您可以使用取模运算符 (%) 来显示该数组中的正确颜色。
在我下面的例子中: color_morris是颜色数组 i是解析出来的索引
color_morris[i%color_morris.length]