将月份数据复制到莫里斯条形图中的堆栈中
Posted
技术标签:
【中文标题】将月份数据复制到莫里斯条形图中的堆栈中【英文标题】:duplicate month data into stack in morris bar chart 【发布时间】:2014-09-15 13:07:06 【问题描述】:如何将数据推送到 morris 条形图堆栈中,如果来自不同帐户的 ajax 调用的多个相似月份数据 这是我的代码:
DashboardService.getGraphForYear(year).success(function (data)
$scope.count = data.results_count;
for(var j=0;j< $scope.count;j++)
$scope.month = data.results[j].month;
switch ($scope.month)
case 1:
sales_com_year.push(month:month[1],amount:data.results[j].order_total_amount);
break;
case 2: sales_com_year.push(month:month[2],amount:data.results[j].order_total_amount);
break;
).error(function (error) );
如果到 1 月,如何将数据推入,以便所有数据都作为堆栈推入 1 月份以及整个月
【问题讨论】:
什么?抱歉,我不明白。 如果有问题,请清楚地提出您的问题。 据我了解,您想添加一月份的列而不是彼此添加...检查此示例:jsbin.com/uzosiq/258/embed?js,output 我认为您应该从一个月中获取所有数据,然后使用push 但您需要指定不同的列...在示例 A 或 B 中您可以在我的示例中看到,我在同一年添加了 C 列:jsbin.com/conafadevu/1/edit?html,js,output 所以您还想将其他月份的数据累积到一月份吗?你的问题很难解释。sales_com_year.push(month:month[1],amount:data.results[j].order_total_amount);
月份也未定义。
【参考方案1】:
您必须创建将日期和值对推送到数组中的列表
var myJSON = [];
$.each(YourList, function (i, item)
var jsonArray = year: item.Date, value: item.value ;
var temp = jsonArray;
myJSON.push(temp);
);
并使用以下参数将 Morris.Area 内部化。
Morris.Area(
element: 'chart',
xLabelMargin: 10,
xLabelAngle: 60,
parseTime: false,
data: myJSON,
xkey: 'year',
ykeys: ['value'],
labels: ['Your Lable'],
lineColors: ['red'],
pointFillColors: ['#ffffff'],
pointStrokeColors: ['black'],
);
【讨论】:
以上是关于将月份数据复制到莫里斯条形图中的堆栈中的主要内容,如果未能解决你的问题,请参考以下文章
更改刻度名称后,如何修复 seaborn 条形图中缺少的条形?