急 急 急!!!

tiancaizhou 2009-04-11 01:53:30
谁有饼状图 柱状图得例子 用chart也可以 用水晶报表也可以 最好有这方面的教程 谢谢大家
...全文
148 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
tiancaizhou 2009-04-13
  • 打赏
  • 举报
回复
各位大侠 我想要的是连接数据库的那种 帮帮我吧
ONE_DATA 2009-04-13
  • 打赏
  • 举报
回复



楼主说的阿是种图例吧?
这个是我在FineReport的demo图里面找到得 我觉得挺漂亮的 呵呵
你可以去FineReport官网下个免费软件,然后demo里面就自带了饼图跟柱状图的模板
jiangshun 2009-04-11
  • 打赏
  • 举报
回复
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();
}
jiangshun 2009-04-11
  • 打赏
  • 举报
回复
不需要那样,直接弄图片就可以,设置图片的宽度,然后以数据为高度就可以了
tiancaizhou 2009-04-11
  • 打赏
  • 举报
回复
最好能和数据库打交道的 MDI+的不要 谢谢
opou 2009-04-11
  • 打赏
  • 举报
回复
http://blog.csdn.net/qjhli/archive/2008/08/01/2753256.aspx
可以参考下
opou 2009-04-11
  • 打赏
  • 举报
回复
<%@ Page ContentType = "image/gif"%>
<%@ Import Namespace = "System.Drawing" %>
<%@ Import Namespace = "System.Drawing.Imaging" %>
<%@ Import Namespace="System.Drawing.Text" %>
<script runat="server" language="C#">

void Page_Load (Object sender, EventArgs e)
{
Bitmap objBitmap;
Graphics objGraphics;

//建立画布
objBitmap = new Bitmap(400, 440);
objGraphics = Graphics.FromImage(objBitmap);

//填充背景
objGraphics.Clear(Color.White);

//绘制饼状图
Pen p=new Pen(Color.Yellow,0);
Rectangle rect=new Rectangle(10,10,380,380);
objGraphics.DrawEllipse(p,rect);

//填充饼状图
Brush b1=new SolidBrush(Color.Red);
Brush b2=new SolidBrush(Color.Green);
Brush b3=new SolidBrush(Color.Blue);
objGraphics.FillPie(b1,rect,0f,120f);
objGraphics.FillPie(b2,rect,120f,120f);
objGraphics.FillPie(b3,rect,240f,120f);

//绘制文字
FontFamily fontfml=new FontFamily(GenericFontFamilies.Serif);
Font font=new Font(fontfml,20);
SolidBrush brush=new SolidBrush(Color.Blue);
objGraphics.DrawString("ASP.NET C# 绘图示例",font,brush,50,400);

//输出并保存图象
objBitmap.Save(Response.OutputStream, ImageFormat.Gif);
objBitmap.Save(Server.MapPath("x.jpg"), ImageFormat.Jpeg);

//结束绘制
objBitmap.Dispose();
objGraphics.Dispose();
}
</script>

<html>
<head runat="server">
<title>无标题页</title>
</head>
<body>
<form id="form1" runat="server">
<div>

</div>
</form>
</body>
</html>

http://images.cnblogs.com/cnblogs_com/xyhyt/Default.gif

62,268

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧