62,268
社区成员
发帖
与我相关
我的任务
分享

public void PK()
{
// int[] xl={12,7,5,21,29,17,23,19,20,15,11,18};
// string[] m={"1","2","3","4","5","6","7","8","9","10","11","12"};
DataTable dt=new DataTable();
dt=fun.select("select sum(Profit),day([date]) from Crm_bill Group by day([date]) Order by day([date])").Tables[0];
ArrayList a=new ArrayList();
ArrayList b=new ArrayList();
if(dt.Rows.Count>0)
{
for(int i=0;i<dt.Rows.Count;i++)
{
a.Add(Convert.ToInt32(dt.Rows[i][0].ToString().Trim()));
b.Add(dt.Rows[i][1].ToString().Trim()+"日");
// a[i]=Convert.ToInt32(dt.Rows[i][0].ToString().Trim());
// b[i]=dt.Rows[i][1].ToString().Trim()+"日";
}
}
Bitmap img=new Bitmap(700,600);
Graphics g=Graphics.FromImage(img);
g.Clear(Color.Snow);
g.DrawString("业绩曲线",new Font("楷书",16),Brushes.Black,new Point(5,5));
g.DrawLine(new Pen(Color.Red,2),50,500,60+a.Count*40,500);//横
g.DrawLine(new Pen(Color.Red,2),50,50,50,500);
// g.DrawRectangle(new Pen(Color.Brown,3),100,100,400,200);
// g.DrawLine(new Pen(Color.Black,20),new Point(150,150),new Point(150,400));
// g.DrawLine(new Pen(Color.Red,2),50,350,800,350);
// g.DrawLine(new Pen(Color.Red,2),50,30,350,350);
Point p1=new Point(50,500);
for(int j=0;j<=20;j++)
{
p1.Y=500-j*20;
g.DrawLine(Pens.Red,p1,new Point(p1.X+5,p1.Y));
g.DrawString(Convert.ToString(j*2000),new Font("宋体",12),Brushes.Black,new Point(p1.X-45,p1.Y-8));
Point pa=new Point(49,50);
Point pb=new Point(45,60);
Point pc=new Point(55,60);
g.DrawLine(new Pen(Color.Red,2),pa,pb);
g.DrawLine(new Pen(Color.Red,2),pa,pc);
g.DrawString("(单位:元)",new Font("宋体",10),Brushes.Black,60,60);
// g.DrawLine(new Pens(Color.Red,1),pa,pb);
// g.DrawLine(new Pens(Color.Red,1),pa,pc);
// Point[] pp={pa,pb,pc};
// g.DrawPolygon(new Pen(Color.Red,3),pp);
}
for(int i=0;i<a.Count;i++)
{
Point p=new Point(55+i*40,500);
// g.DrawLine(Pens.Red,p,new Point(p.X,p.Y-5));
g.DrawString(b[i].ToString(),new Font("宋体",10),Brushes.Black,p);
// p.X+=35;
}
Point pq=new Point(60+a.Count*40,500);
Point pw=new Point(55+a.Count*40,495);
Point pe=new Point(55+a.Count*40,505);
g.DrawLine(new Pen(Color.Red,2),pq,pw);
g.DrawLine(new Pen(Color.Red,2),pq,pe);
// g.DrawString("(单位:元)",new Font("宋体",10),Brushes.Black,60,60);
for(int i=0;i<a.Count-1;i++)
{
// int aa=Convert.ToInt32(a[i]);
// Point rec=new Point(50+i*35,aa/100+200);
// Point dec=new Point(50+(i+1)*35,Convert.ToInt32(a[i+1])/100+200);
// g.DrawLine(new Pen(Color.Black),rec,dec);
// g.DrawString(a[i].ToString(),new Font("宋体",8),Brushes.Blue,rec);
Point rec=new Point(70+i*40,500);
Point dec=new Point(70+i*40,500-Convert.ToInt32(a[i])/100);
g.DrawLine(new Pen(Color.Red,25),rec,dec);
g.DrawString(a[i].ToString(),new Font("宋体",10),Brushes.Blue,new Point(55+i*40,480-Convert.ToInt32(a[i])/100));
}
img.Save(Response.OutputStream,ImageFormat.Jpeg);
img.Dispose();
g.Dispose();
}