wpf 中 chart饼图的一个小问题求指教

问题描述

我在wpf中用chart画了个饼图当其中数据源中只有一个值得时候饼图不能显示出来求指教

解决方案

解决方案二:
没有大神吗难道
解决方案三:
求图,求代码,这个好像很简单的,我刚做,dotnetcharting做得
解决方案四:
web项目里面运用的
解决方案五:
利用饼图分析人力资源情况示例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);}//codego.net/tags/1/1/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());}

时间: 2024-09-23 05:40:28

wpf 中 chart饼图的一个小问题求指教的相关文章

对象-java中有关TreeSet的一个小疑问

问题描述 java中有关TreeSet的一个小疑问 看书上说java所有集合框架的具体类都至少有两种构造方式,一种是无参构造方法,一种是用另一个已有的容器来构造. 比如先前已经有了一个HashSet类的对象hh,但是他内部的元素是无序的,而我们这时再创建一个TreeSet(hh),他就会根据hh中存有元素自带的compareTo方法自动排好序,并且这个排序过程只进行一次.而如果我们将这些带排序的元素逐个加入到TreeSet中去,则就要加一次排一次序,会更耗时间. 请问,是不是有所遇到这种用到Tr

[小白求问】unity3d中帧动画的一个小问题

问题描述 [小白求问]unity3d中帧动画的一个小问题 设置了一个动画数组 private var anim : Object[]; 初始化anim = Resources.LoadAll("anim"); 然后怎么获取anim数组中某一帧的长和宽呢? 尝试 anim[0].height失败. 刚刚开始学,用的JavaScript

SQL Server 中关于 @@error 的一个小误区

原文:SQL Server 中关于 @@error 的一个小误区 在SQL Server中,我常常会看到有些前辈这样写: if(@@error<>0) ROLLBACK TRANSACTION T else COMMIT TRANSACTION T 一开始,我看见别人这么写,我就想当然的以为它只是个计数器,每当检测到一处错误时,@@error的值+1,不过就因为这个理所当然,所以杯具了... 实际上,它并不是一个计数器,它是一个动态的值,动态的标识最后一条SQL命令执行的结果,如果成功则为0,

c语言-C语言的一个小问题 求解答

问题描述 C语言的一个小问题 求解答 计算机问题求解答">如题 我的代码是这样 #includeint main(){ double xy; printf(""输入数据:""); scanf(""%lf""&x); if(x<1) y=x;else if(x>=1&&x<=10) y=2*x-1;else if(x>10) y=3*x-11;printf(&quo

c++-初学C++ 一个小程序 求大神帮忙看下

问题描述 初学C++ 一个小程序 求大神帮忙看下 //分秒显示函数 #include using namespace std; //全局引用std命名空间 void showTime(int ,int); int main() { int hours =0 , mins = 0;//定义且初始化分 和秒 cout << "Input the hour "; cin >> hours; cout << "Input the mins &quo

Java初学一枚 一个小程序 求有人帮我看看

问题描述 Java初学一枚 一个小程序 求有人帮我看看 package malnAV; public class Work3_3 { public static void main(String[] args) { //??? //方法 main 不能声明为"静态":只能在静态类型或顶级类型中才能声明静态方法 Emp e1=new Emp(001,"张三"); Emp e2=new Emp(002,"李四"); Emp e3=new Emp(00

svn安装 svn服务器-安装visualSVN server中的一个问题,求指教~

问题描述 安装visualSVN server中的一个问题,求指教~ 想把Repositories放在网络映射其他电脑的一个盘上,提示custom action CreatInitialAuthFilesExecute failed.有没有有过类似经历的,求指教啊.

css入门-前端新人求引路人,遇到些小问题求指教

问题描述 前端新人求引路人,遇到些小问题求指教 1.有没有好上手一点的bootstrap用户开发手册2.用的官网的导航一个样式,点击section2没反应,图和代码如下图 解决方案 菜鸟教程网的比较简单一点吧 http://www.runoob.com/bootstrap/bootstrap-tab-plugin.html 解决方案二: 首先查看引入的CSS 和 JS 有没有错

有没有大神知道如何在jsp中跳转到本地电脑?求指教

问题描述 有没有大神知道如何在jsp中跳转到本地电脑?求指教 我有一个路径,比如说是D盘中某个文件夹或者文件,比如说我在页面上有个a标签,我怎么样才能点击a标签进入那个文件?直接给href路径不好用,有没有大神知道怎么解决?需要下载插件之类的吗?纯在jsp中编写代码能实现吗? 解决方案 首先浏览器本身要支持文件夹浏览,IE7以后就移除了这样的功能,第三方浏览器也未必支持 如果支持,可以用 file://d/你的文件夹 定位 解决方案二: 可是如果不支持那么还没有别的方法可以用?