无法在Dojo中绘制饼图

无法在Dojo中绘制饼图,dojo,dojox.grid,dojox.charting,Dojo,Dojox.grid,Dojox.charting,我正在尝试在dojo中为POC绘制饼图。我画不出来。有人能帮我解决这个问题吗。我在谷歌上搜索了很多,但找不到确切的问题 我能画条形图,但看到饼图的问题。我将数据存储在dojo store中,并将其转换为系列并提供饼图,但最终什么也看不到 如果有人帮我解决这个问题,我将不胜感激 下面是我的代码: 变量地理数据={ 标识符:“Id”, 标签:“Id”, 项目:[{ Id:'1', 名称:“非洲”, 年龄:10岁, 性别:'男性', 区域:“Java”, 经验:1 }, { Id:'2', 名称:“

我正在尝试在dojo中为POC绘制饼图。我画不出来。有人能帮我解决这个问题吗。我在谷歌上搜索了很多,但找不到确切的问题

我能画条形图,但看到饼图的问题。我将数据存储在dojo store中,并将其转换为系列并提供饼图,但最终什么也看不到

如果有人帮我解决这个问题,我将不胜感激

下面是我的代码:


变量地理数据={
标识符:“Id”,
标签:“Id”,
项目:[{
Id:'1',
名称:“非洲”,
年龄:10岁,
性别:'男性',
区域:“Java”,
经验:1
}, {
Id:'2',
名称:“Asia1”,
年龄:45,,
性别:'男性',
区域:“C”,
经验:3
}, {
Id:'3',
名称:“Asia2”,
年龄:35岁,
性别:'男性',
区域:“Java”,
经验:2
}, {
Id:'4',
名称:“Asia3”,
年龄:23,,
性别:'男性',
区域:“C”,
经验:1
}, {
Id:'5',
名称:“Asia4”,
年龄:78,
性别:'男性',
区域:“Perl”,
经验:4
}]
};
var layoutGeo=[
[{
字段:“Id”,
姓名:“Id”,
宽度:10
}, {
字段:“名称”,
姓名:“姓名”,
宽度:10,
可编辑:真
}, {
字段:“年龄”,
姓名:“年龄”,
宽度:10,
可编辑:真
}, {
字段:“性别”,
姓名:“性别”,
宽度:10,
是的,
键入:“dojox.grid.cells.Select”,
选项:[“男性”、“女性”]
}, {
字段:“区域”,
名称:“区域”,
宽度:10,
可编辑:真
}, {
字段:“经验”,
名称:“经验”,
宽度:10,
可编辑:真
}]
];
函数图表(){
dojo.empty(“peiDiv”);
//在其“保持”节点中创建图表
var pieChart=new dojox.charting.Chart2D(“peiDiv”);
//设定主题
setTheme(dojox.charting.themes.Claro);
//添加唯一/默认绘图
pieChart.addPlot(“默认值”{
键入:“馅饼”,
半径:200,
fontColor:“黑色”,
标签偏移:20
});
var系列=makeseries(地理数据);
//添加数据系列
pieChart.addSeries(“面积”,系列);
//绘制图表!
perechart.render();
}
函数makeseries(数据){
返回[{
数据点:“物品”,
字段:“Id”,
姓名:“Id”
}, {
数据点:“物品”,
字段:“名称”,
姓名:“姓名”
}, {
数据点:“物品”,
字段:“区域”,
名称:“区域”
}];
}

将填充设置为分配给所有项目
添加 去除


您的
makeseries
函数没有以饼图可以使用的格式返回数据。例如,如果您想在
geoData
中绘制年龄饼图,则
makeseries
应如下所示:

function makeseries(data) {
    return data.items.map(function(d) {
        return {x: d['Id'], y: d['Age']};
    });
}

在原始代码的上下文中显示。看起来您还必须调整饼图包含div的大小。

如果您想让我提供更多详细信息,请告诉我。请不要投反对票,因为我需要立即回复。它不会引起太多用户的注意,如果被否决,开发工具控制台会怎么说?有错误吗?我建议创建一个jsfiddle.net或jsbin.com,让人们更容易看到发生了什么。这个jsfiddle url:这段代码在本地显示网格,但不在jsfiddle中。这里有一个整洁的jsfiddle:。我稍微整理了一下你的HTML,并在JSFIDLE的正确部分格式化了内容。嘿@ThomasUpton,我非常感谢你的帮助。我完全无法将存储数据转换为序列。你的帮助救了我一命。再次感谢您Hey thomas,我正在寻找在饼图中绘制一个图形区域与该区域的epmoyees数量。如何实现这一点您需要正确映射数据。循环遍历所有项目并存储对象中每个区域的计数,然后返回一个数组,其中每个区域的计数类似于
{x:1,y:area\u counts[area]}
。在这个网站上,可能有很多问题可以回答如何做到这一点。我已经更新了一些与您所谈论的内容大致相同的内容。非常感谢。不管我说什么,我对你的帮助表示感谢是非常少的。在过去的30个小时里,我一直在努力解决这个问题。正在考虑寻找一个简单的dojo插件,但找不到。我们需要自己转换数据?最后一个问题,如何向饼图区域名称添加标签,如java、c等