c#代码画图
说明:此示例代码在我做的一个项目中 不过还是可以学习一下
一:直角坐标系显示数据
先看效果图:
aaarticlea/png;base64,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" alt="" />
代码:
private List<int> Conuts = new List<int>(); public List<int> Conuts1
{
get { return Conuts; }
set { Conuts = value; }
}
protected void Page_Load(object sender, EventArgs e)
{ StaffSystemDataContext dc = new StaffSystemDataContext();
var Deps = dc.PropertyMappings.Where(p => p.PropertyName.Equals("DepartmentID"));
foreach (var dep in Deps)
{
var Pros = dc.Projects.Where(p => p.DepartmentID.Equals(dep.PropertyValue));
Conuts1.Add(Pros.Count());
}
//画图初始化
Bitmap bMap = new Bitmap(, );
Graphics gph = Graphics.FromImage(bMap);
gph.Clear(Color.White);
//中心点
PointF cPt = new PointF(, );
//X轴三角形
PointF[] xPt = new PointF[] { new PointF(cPt.Y + , cPt.Y), new PointF(cPt.Y, cPt.Y - ), new PointF(cPt.Y, cPt.Y + ) };
//Y轴三角形
PointF[] yPt = new PointF[] { new PointF(cPt.X, cPt.X - ), new PointF(cPt.X - , cPt.X), new PointF(cPt.X + , cPt.X) };
//图表标题
gph.DrawString("部门项目汇总图表", new Font("宋体", ), Brushes.Black, new PointF(cPt.X + , cPt.X));
//画X轴
gph.DrawLine(Pens.Black, cPt.X, cPt.Y, cPt.Y, cPt.Y);
gph.DrawPolygon(Pens.Black, xPt);
gph.FillPolygon(new SolidBrush(Color.Black), xPt);
gph.DrawString("部门", new Font("宋体", ), Brushes.Black, new PointF(cPt.Y + , cPt.Y + ));
//画Y轴
gph.DrawLine(Pens.Black, cPt.X, cPt.Y, cPt.X, cPt.X);
gph.DrawPolygon(Pens.Black, yPt);
gph.FillPolygon(new SolidBrush(Color.Black), yPt);
gph.DrawString("项目数", new Font("宋体", ), Brushes.Black, new PointF(, ));
//画Y轴刻度
for (int i = ; i <= ; i++)
{
gph.DrawString(i.ToString(), new Font("宋体", ), Brushes.Black, new PointF(cPt.X - , cPt.Y - i * - ));
gph.DrawLine(Pens.Black, cPt.X - , cPt.Y - i * , cPt.X, cPt.Y - i * );
}
//画X轴项目
int a = ;
foreach (var dep in Deps)
{ gph.DrawString(dep.PropertyMeaning.Substring(, ), new Font("宋体", ), Brushes.Black, new PointF(cPt.X + a * - , cPt.Y + ));
gph.DrawString(dep.PropertyMeaning.Substring(, ), new Font("宋体", ), Brushes.Black, new PointF(cPt.X + a * - , cPt.Y + ));
gph.DrawString(dep.PropertyMeaning.Substring(, ), new Font("宋体", ), Brushes.Black, new PointF(cPt.X + a * - , cPt.Y + ));
a++;
}
for (int i = ; i <= Deps.Count(); i++)
{
//画点
gph.DrawEllipse(Pens.Black, cPt.X + i * - 1.5F, cPt.Y - Conuts1[i - ] * - 1.5F, , );
gph.FillEllipse(new SolidBrush(Color.Black), cPt.X + i * - 1.5F, cPt.Y - Conuts1[i - ] * - 1.5F, , );
//画数值
gph.DrawString(Conuts1[i - ].ToString(), new Font("宋体", ), Brushes.Black, new PointF(cPt.X + i * , cPt.Y - Conuts1[i - ] * ));
//画折线
if (i > )
gph.DrawLine(Pens.Red, cPt.X + (i - ) * , cPt.Y - Conuts1[i - ] * , cPt.X + i * , cPt.Y - Conuts1[i - ] * );
}
System.IO.MemoryStream ms = new System.IO.MemoryStream();
bMap.Save(ms, System.Drawing.Imaging.ImageFormat.Png);
Response.ClearContent();
Response.ContentType = "image/Png";
Response.BinaryWrite(ms.ToArray());
gph.Dispose();
bMap.Dispose();
Response.End();
}
注意:这里的坐标都是从左上角开始算 而且必须使用最后的一小段代码将其转化为图片
二:绘制圆形效果
aaarticlea/png;base64,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wryimDDZknKgFeYVxYTJlpQDrTCvKCZMtqQcaIV5RTFhsiXlQCvMK4oJky0pB1phXlFMmGxJOdAK84piwmRLyoFWmFcUEyZbUg60wryimDDZknKgFeYVxYTJlpQDrTCvKCZMtqQcaIV5RTFhsiXlQCvMK4oJky0pB1phXlFMmGxJOdAK84piwmRLyoFWmFcUEyZbUg60wryimDDZknKgFeYVxYTJlpQDrTCvKCZMtqQcaIV5RTFhsiXlQCvMK4oJk61KKf90gyonDNSnlSkmTLY23cqXG6efOLvbnA3u+wYi/4RXH2j4xMSubjmf3pqpXS1dz+5oZYoJk63dtPLwP9OnMbVNb01650uPlT7bqUfXva6c/eScz/ma9P438dzErjKvLTullSkmTLa228qfBg063Em6adJ77gaVln+qOa8ivyOXXpPz14uu8C3n82m6lYcXc/ho/gtk47QyxYTJ1tZbefVpjO6nVxKr22LduSWe/imjbkdfS/65ja6fOkrvnD9NtPLo+SQu+Li/fvvFp0+fvvj2eu3vvzqewVe/76/qb0k7tDLFhMnWRlu5VwlTe8hsoE9jZfwpowgz9790m2GB5V+W2f2vOOfe1R491uUFmbqAvY1Htxz6/VdffPvX33913bW//+pUx+cvjhu+b5/YH4FpZYoJk62NtnJ3p3vlxKOfyjTcoucmvp56OevObfiShw/1jpI41uifY+9Zn6Zb+XjLe3EP3J0b9+zbr97/86/ffvFRy58+fXKv3DKtTDFhsrWDVk7sYV1rDksupylz9j/7qtM7H90scZ75V/jTRCt/mi7RxKnmHGJqVxN6rXxxh3xu5eMH3WfXrU4btDLFhMnWDlp53WlMbdMVbuX89YkXONWC+Vdvam85ZzKs0qnz6a38NGji4a4mDO6Vvxi08vuGOrlhWpliwmRrB62cuYec9XFaOX2Upa2cv7fhnocXNtHKiZZduv214feVT988HpTyF9/+tfvrt1/43nKTtDLFhMnWdlM+VUW3t2yi3S83yDm3detzajjRl71TnXoo/1izz8o51uzTz3rfV776YPq89vx5de+7yO6Vm7bdeUV1YbK13ZRfjvvRiuoGbTG6cvjcqT4ercb0uY3uZNTSbWaPm/nac85/9qomTm94rOFBp06D3dnuvKK6MNnabsqnpvzo+kT15jRZojbOT0kbPdXh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" alt="" />
StaffSystemDataContext dc = new StaffSystemDataContext();
var Deps = dc.PropertyMappings.Where(p => p.PropertyName.Equals("DepartmentID")); //创建画图对象
int width = , height = ;
Bitmap bitmap = new Bitmap(width, height);
Graphics g = Graphics.FromImage(bitmap);
try
{
//清空背景色
g.Clear(Color.White);
Pen pen1 = new Pen(Color.Red); Brush brush1 = new SolidBrush(Color.PowderBlue);
Brush brush2 = new SolidBrush(Color.Blue);
Brush brush3 = new SolidBrush(Color.Wheat);
Brush brush4 = new SolidBrush(Color.Orange);
Brush brush5 = new SolidBrush(Color.Gray);
Brush brush6 = new SolidBrush(Color.Red);
Brush brush7 = new SolidBrush(Color.White);
Brush[] brs = new Brush[] { brush1, brush2, brush3, brush4, brush5, brush6 };
Font font1 = new Font("Courier New", , FontStyle.Bold);
Font font2 = new Font("Courier New", );
g.FillRectangle(brush7, , , width, height); //绘制背景图
g.DrawString("员工部门比例饼形图", font1, brush2, new Point(, )); //书写标题
int piex = , piey = , piew = , pieh = , sum = ;
var Pros = dc.Projects.Where(p => p.DepartmentID != null);
sum = Pros.Count();
int a = ;
float j = ;
foreach (var dep in Deps)
{
var Prods = dc.Projects.Where(p => p.DepartmentID.Equals(dep.PropertyValue));
//计算角度
float angle = Convert.ToSingle(( / Convert.ToSingle(sum)) * Convert.ToSingle(Prods.Count()));
//绘制员工所占比例
//FieldInfo fi = type.GetField("ddd" + i.ToString());
//temp += fi.GetValue(this).ToString();
//Type type = this.GetType();
//Brush fi = (Brush)type.GetField("brush" + a.ToString());
g.FillPie(brs[a], piex, piey, piew, pieh, j, angle);
a++;
j = j + angle;
} //绘制标识
g.DrawRectangle(pen1, , , , ); //绘制范围框
//绘制小矩形
int le = , b = ;
foreach (var dep in Deps)
{
var Prods = dc.Projects.Where(p => p.DepartmentID.Equals(dep.PropertyValue));
g.FillRectangle(brs[b], , le, , );
g.DrawString("" + dep.PropertyMeaning + "员工占公司总人数比例:" + Convert.ToSingle(Prods.Count()) * / Convert.ToSingle(sum) + "%", font2, brs[b], , le);
le += ;
b++;
}
}
catch (Exception ex)
{
throw new Exception("有错!!!");
}
System.IO.MemoryStream ms = new System.IO.MemoryStream();
bitmap.Save(ms, System.Drawing.Imaging.ImageFormat.Png);
Response.ClearContent();
Response.ContentType = "image/Png";
Response.BinaryWrite(ms.ToArray());
g.Dispose();
bitmap.Dispose();
Response.End();
c#代码画图的更多相关文章
- 设置matplotlib画图支持中文显示
1.安装中文字体 git clone https://github.com/tracyone/program_font && cd program_font && ./ ...
- Windows下LATEX排版论文攻略—CTeX、JabRef使用介绍
Windows下LATEX排版论文攻略—CTeX.JabRef使用介绍 一.工具介绍 TeX是一个很好排版工具,在学术界十分流行,特别是数学.物理学和计算机科学界. CTeX是TeX中的一个版本,指的 ...
- Java反转单链表(code)
主要是面试中可能会经常碰上该类似操作,尤其是稍大点公司,面试官可能并不在乎你能不能搞定该题,但是这类型题目最是能体现程序员的思维状态 ---一个迷糊头脑的程序员 怎能立志改变这个世界 /** * @a ...
- Windows下TEX排版论文攻略—CTeX、JabRef使用心得
笔者刚刚接触到TEX排版,相关知识完全空白,用了两天时间学习并完成了一篇论文的完整排版. 期间遇到不少小问题,着实辛苦,分享至上,现将其解决办法总结归纳,共同学习. 一.工具介绍 TeX是一个 ...
- VC调试技巧
Visual C++ 的 C 运行时刻函数库标识模板0xCD 已经分配的数据(alloCated Data)0xDD 已经释放的数据(Deleted Data)0xFD 被保护的数据 ...
- Jupyter Notebooks 是数据科学/机器学习社区内一款非常流行的工具
Jupyter Notebooks 是数据科学/机器学习社区内一款非常流行的工具.Jupyter Notebooks 允许数据科学家创建和共享他们的文档,从代码到全面的报告都可以.李笑来 相当于拿他来 ...
- 【 HDU4773 】Problem of Apollonius (圆的反演)
BUPT2017 wintertraining(15) #5G HDU - 4773 - 2013 Asia Hangzhou Regional Contest problem D 题意 给定两个相离 ...
- 【Matplotlib】利用Python进行绘图
[Matplotlib] 教程:https://morvanzhou.github.io/tutorials/data-manipulation/plt/ 官方文档:https://matplotli ...
- 关于JavaScript中实现继承,及prototype属性
感谢Mozilla 让我弄懂继承. JavaScript有八种基本类型,函数属于object.所以所有函数都继承自object.//扩展:对象,基本上 JavaScript 里的任何东西都是对象,而且 ...
随机推荐
- unresolved external symbol __report_rangecheckfailure 解决思路
__report_rangecheckfailure 是用来检查堆栈缓存溢出的,如果编译的时候打开GS(project property-->Configuration properties- ...
- C++Primer 第十二章
//1.标准库提供了两种智能指针类型来管理动态对象,均定义在头文件memory中,声明在std命名空间. // shared_ptr:允许多个指针指向同一个对象. // unique_ptr:独占所指 ...
- Winform TreeView 节点拖动
private void treeView_ItemDrag(object sender, ItemDragEventArgs e) { TreeNode dragNode = e.Item as T ...
- .vimrc文件配置及航意
1. vimrc文件常见语句释义 设定 tab 的位置 :set tabstop=4 输入 tab 时自动将其转化为空格 :set expandtab ...
- bzoj4448 [Scoi2015]情报传递
第一问不解释,对于第二问的处理,可以使用cdq分治,假设分治的询问区间是[L,R],那么我们对于标号在[L,mid]的修改操作赋予一个权值,因为在当前[L,R]中[L,mid]的修改操作只会对[mid ...
- C#写好的类库dll怎么在别人调用的时候也能看到注释?
菜单 Project -> 'xxxx' Properties -> Build -> Output -> 勾上 XML Documentation file
- ThinkPHP讲解(八)——显示、修改、添加、删除
一.显示数据 <h1>主页面</h1> <table width="100%" border="1" cellpadding=&q ...
- [转]bit与byte
本文为转载,感谢博主的分享.原文地址:http://www.cnblogs.com/flyme/archive/2011/08/25/2153596.html bit意为“位”或“比特”,是计算机运算 ...
- 鸟哥的linux私房菜学习记录之bash
当你对计算机输入一个指令时,bash会将指令传送给核心kernel,核心再去调用相关的程序,启动硬件. 如果直接让用户操作操作系统,可能会造成系统的崩溃,所以操作系统通过应用程序来让用户操作系统即壳程 ...
- 源码安装apache
目标:源码安装apache 依赖包:apr.apr-util和pcre.其中pcre正则库要先安装,apr和apr-util(已解压)可以复制到apache下的资源库srclib下. 安装pcre: ...