问题描述
为啥会显示一个Slice,是从哪里冒出来的?--------------------------------------------------------------------------$("#Pie").click(function(){$.post("/StatisticalChart/GetStatisticalChart",function(result){varbrowsers=[];if(result!=null){$.each(result,function(i,d){browsers.push([d.TestColName1,d.TestColName2]);});varchart=newHighcharts.Chart({chart:{renderTo:'container',plotBackgroundColor:null,plotBorderWidth:null},title:{text:'年龄统计图表'},tooltip:{//数据点提示框pointFormat:'{series.name}:<b>{point.y}</b>'//pointFormat:'{data:wddata}:<b>{point.y}</b>',percentageDecimals:1},credits:{enabled:false},plotOptions:{//数据点选项pie:{allowPointSelect:true,cursor:'pointer',depth:35,dataLabels:{enabled:true,formatter:function(){return'<b>'+this.point.name+'</b>:'+this.y;}},showInLegend:true,size:'80%'}},series:[{//数据列选项type:'pie',name:'个数',data:browsers}]});}},"json");});
解决方案
解决方案二:
不太清楚,帮顶下
解决方案三:
看看数据有木有返回出来的JSON拼的对不对console.log()出来自己看看啊
解决方案四:
我最近也在弄hc,也遇到过你说的问题:就是图形展示出来后,显示的数据是slice。我可以很肯定的告诉你,是你json拼接错误。有两个排错方法。一、正常调试,看看拼接的json数据是什么样的。二、在ajax请求成功后添加console.log(这里是ajax返回json数据),用Google浏览器运行,按F12,选network,可以查看请求链接,点击链接,可以看到json数据。
解决方案五:
如果你发现json拼接没问题,再看看前台调用的时候,是不是正确。看看我说的这两个地方,问题保证解决。
解决方案六:
引用4楼BevisLiao的回复:
如果你发现json拼接没问题,再看看前台调用的时候,是不是正确。看看我说的这两个地方,问题保证解决。
-------------------不过我不知道为什么会拼错。。感觉没有错啊
解决方案七:
引用4楼BevisLiao的回复:
如果你发现json拼接没问题,再看看前台调用的时候,是不是正确。看看我说的这两个地方,问题保证解决。
---------你的问题解决了吗?
解决方案八:
你对json是不是不熟悉?你看看我拼接的json和调用方法,看能不能自己解决。另外两张是运行图和在Google中按f12查看的日志截图。
解决方案九:
这张才是匹配的日志图。上面那张是其他页面的。
解决方案十:
使用饼图分析人力资源privatevoidCreateImage(){//连数据库SqlConnectionCon=newSqlConnection(ConfigurationManager.AppSettings["ConSql"]);Con.Open();stringstr1="select*fromtb_manpower";SqlCommandCom=newSqlCommand(str1,Con);DataSetds=newDataSet();SqlDataAdapterDa=newSqlDataAdapter(Com);Da.Fill(ds);Con.Close();//计算员工总和stringstr2="SELECTSUM(Employee+SellMan+Director+Manager)ASNumberFROMtb_manpower";SqlDataAdapterDa2=newSqlDataAdapter(str2,Con);DataSetds2=newDataSet();Da2.Fill(ds2);intSum=Convert.ToInt32(ds2.Tables[0].Rows[0][0].ToString());//获取普通员工数目intemployee=Convert.ToInt32(ds.Tables[0].Rows[0][1].ToString());//获取销售员工数目intsellman=Convert.ToInt32(ds.Tables[0].Rows[0][2].ToString());//获取主任数目intdirector=Convert.ToInt32(ds.Tables[0].Rows[0][3].ToString());//获取经理数目intmanager=Convert.ToInt32(ds.Tables[0].Rows[0][4].ToString());//创建画图对象intwidth=400,height=450;Bitmapbitmap=newBitmap(width,height);Graphicsg=Graphics.FromImage(bitmap);try{//清空背景色g.Clear(Color.White);Penpen1=newPen(Color.Red);Brushbrush1=newSolidBrush(Color.YellowGreen);Brushbrush2=newSolidBrush(Color.Blue);Brushbrush3=newSolidBrush(Color.Brown);Fontfont1=newFont("CourierNew",16,FontStyle.Bold);Fontfont2=newFont("CourierNew",8);g.FillRectangle(brush1,0,0,width,height);//绘制背景图g.DrawString("公司人力资源饼形图",font1,brush2,newPoint(80,20));//书写标题//普通员工在饼形图中分配的角度floatangle1=Convert.ToSingle((360/Convert.ToSingle(Sum))*Convert.ToSingle(employee));//销售员工在饼形图中分配的角度floatangle2=Convert.ToSingle((360/Convert.ToSingle(Sum))*Convert.ToSingle(sellman));//主任在饼形图中分配的角度floatangle3=Convert.ToSingle((360/Convert.ToSingle(Sum))*Convert.ToSingle(director));//经理在饼形图中分配的角度floatangle4=Convert.ToSingle((360/Convert.ToSingle(Sum))*Convert.ToSingle(manager));g.FillPie(Brushes.Beige,50,100,100,100,0,360);g.FillPie(brush2,50,100,100,100,0,angle1);//绘制普通员工所占比例g.FillRectangle(brush2,50,220,20,10);//绘制小矩形g.DrawString("普通员工"+Convert.ToSingle(employee)*100/Convert.ToSingle(Sum)+"%",font2,brush2,80,220);g.FillPie(Brushes.Beige,200,100,100,100,0,360);g.FillPie(brush3,200,100,100,100,0,angle2);//绘制销售员工所占比例g.FillRectangle(brush3,200,220,20,10);//绘制小矩形g.DrawString("销售员工"+Convert.ToSingle(sellman)*100/Convert.ToSingle(Sum)+"%",font2,brush3,230,220);g.FillPie(Brushes.Beige,50,260,100,100,0,360);g.FillPie(Brushes.BlueViolet,50,260,100,100,0,angle3);//绘制普通员工所占比例g.FillRectangle(Brushes.BlueViolet,50,380,20,10);//绘制小矩形g.DrawString("主任"+Convert.ToSingle(director)*100/Convert.ToSingle(Sum)+"%",font2,Brushes.BlueViolet,80,380);g.FillPie(Brushes.Beige,200,260,100,100,0,360);g.FillPie(Brushes.Black,200,260,100,100,0,angle4);//绘制销售员工所占比例g.FillRectangle(Brushes.Black,200,380,20,10);//绘制小矩形g.DrawString("经理"+Convert.ToSingle(manager)*100/Convert.ToSingle(Sum)+"%",font2,Brushes.Black,230,380);}catch(Exceptionmd){Response.Write(md.Message);}System.IO.MemoryStreamms=newSystem.IO.MemoryStream();bitmap.Save(ms,System.Drawing.Imaging.ImageFormat.Gif);Response.ClearContent();Response.ContentType="image/Gif";Response.BinaryWrite(ms.ToArray());}