随笔- 18  文章- 0  评论- 52 

由于项目的需求图表显示数据,今天在网上找了一天,终于找到一个不错的控件----ZedGraph,它支持asp,asp.net,vc.
现在最新的版本是5.0,些版本支持   .NET 2.0.5.0版本以下的支持.NET 1.1
我们现在的项目是.NET1.1开发的.我在网上找了一天也没有发现一个例子,下面我将介绍下其在ASP.NET下的用做WEB控件的用法
1.先将它提供的两个DLL文件添加引用

2.新建一个ASPX页面ZedGraph.aspx,引用ZedGraph用户控件
   ZedGraph.aspx页面代码
   

   ZedGraph.aspx.cs代码
   

 1 using System;
 2 using System.Collections;
 3 using System.ComponentModel;
 4 using System.Data;
 5 using System.Drawing;
 6 using System.Web;
 7 using System.Web.SessionState;
 8 using System.Web.UI;
 9 using System.Web.UI.WebControls;
10 using System.Web.UI.HtmlControls;
11 using ZedGraph;
12 using ZedGraph.Web;
13 
14 namespace ZedGraph
15 {
16     /// <summary>
17     /// ZedGraph 的摘要说明。
18     /// </summary>
19     public class ZedGraph : System.Web.UI.Page
20     {
21         protected ZedGraphWeb ZedGraphWeb1;
22         private void Page_Load(object sender, System.EventArgs e)
23         {
24         }
25         
26         #region Web 窗体设计器生成的代码
27         override protected void OnInit(EventArgs e)
28         {
29             //
30             // CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
31             //
32             InitializeComponent();
33             base.OnInit(e);
34         }
35         
36         /// <summary>
37         /// 设计器支持所需的方法 - 不要使用代码编辑器修改
38         /// 此方法的内容。
39         /// </summary>
40         private void InitializeComponent()
41         {    
42             this.Load += new System.EventHandler(this.Page_Load);
43             this.ZedGraphWeb1.RenderGraph +=new ZedGraphWebControlEventHandler(this.OnRenderGraph);
44             
45         }
46         #endregion
47         private void OnRenderGraph(ZedGraphWeb zgw, Graphics g, MasterPane masterPane)
48         {
49             // Get the GraphPane so we can work with it
50             GraphPane myPane = masterPane[0];
51 
52             myPane.Title.Text = "销售统计";
53             myPane.XAxis.Title.Text = "区域";
54             myPane.YAxis.Title.Text = "销售总额: 元";
55 
56             PointPairList list = new PointPairList();
57             PointPairList list2 = new PointPairList();
58             PointPairList list3 = new PointPairList();
59             Random rand = new Random();
60 
61             for (double x = 0; x < 5; x += 1.0)
62             {
63                 double y = rand.NextDouble() * 100;
64                 double y2 = rand.NextDouble() * 100;
65                 double y3 = rand.NextDouble() * 100;
66                 list.Add(x, y);
67                 list2.Add(x, y2);
68                 list3.Add(x, y3);
69             }
70 
71             BarItem myCurve = myPane.AddBar("购买", list, Color.Blue);
72             myCurve.Bar.Fill = new Fill(Color.Blue, Color.White, Color.Blue);
73             BarItem myCurve2 = myPane.AddBar("续费", list2, Color.Red);
74             myCurve2.Bar.Fill = new Fill(Color.Red, Color.White, Color.Red);
75             BarItem myCurve3 = myPane.AddBar("升级", list3, Color.Green);
76             myCurve3.Bar.Fill = new Fill(Color.Green, Color.White, Color.Green);
77 
78             myPane.XAxis.MajorTic.IsBetweenLabels = true;
79             string[] labels = { "域名""主机""数据库""邮局""套餐" };
80             myPane.XAxis.Scale.TextLabels = labels;
81             myPane.XAxis.Type = AxisType.Text;
82             myPane.Fill = new Fill(Color.White, Color.FromArgb(200200255), 45.0f);
83             myPane.Chart.Fill = new Fill(Color.White, Color.LightGoldenrodYellow, 45.0f);
84 
85             masterPane.AxisChange(g);
86         }
87     }
88 }
89 
3.新一个测试页面test.aspx
  在这个页面中插入一个图片,其URL为ZedGraph.aspx

4
 posted on 2007-05-16 17:49 王旭 阅读(7255) 评论(34)  编辑 收藏 网摘 所属分类: ASP.NETC#

#1楼    回复  引用  查看    
 neuhawk       | 2007-05-16 18:19
用reportview更简单。
不过,zedgraph在winform用不错。

#2楼    回复  引用    
 web报表[未注册用户] | 2007-05-16 18:39
DundasWebChart 不错!! http://***/webreport/ 这里有示例
#3楼    回复  引用    
 ***[未注册用户] | 2007-05-16 20:24
毕竟是免费的,效率很低
#4楼    回复  引用  查看    
 aspnetx       | 2007-05-16 21:28
@web报表
收费的说

#5楼    回复  引用    
 wxukie[未注册用户] | 2007-05-16 22:34
效率是有点低,明天打算换一个...
#6楼    回复  引用    
web报表在这里到处打广告。
客观的说,抛开支持国产软件的情节来讲,它的整体表现一般,与国外一些顶尖的相关软件还有相当差距,而且价格也不算太便宜

#7楼    回复  引用  查看    
 Fish Can Flying!       | 2007-05-17 14:11
借鉴~努力学习中
#9楼    回复  引用    
 girlbettor[未注册用户] | 2007-05-19 12:32
我照你说的做了多次,为什么不行?
#10楼    回复  引用    
 wxukie[未注册用户] | 2007-05-19 13:55
@girlbettor

呵.你的ZedGraph是那个版本的?我是用4.5.7这个版本的

#11楼    回复  引用    
 girlbettor[未注册用户] | 2007-05-19 15:06
我用的是4.5.8,这么点差别也不行吗?在.net 1.1下面吗?我在.net 2.0下面一试就成功了,可是我不能为一个曲线图换我其它的页面,我现在快要死悄悄了.
#12楼    回复  引用    
 girlbettor[未注册用户] | 2007-05-19 15:13
还有就是另外一种模式,为什么老说编译错误,找不到ZedGraph,可明明我引用了,而且在程序里也用了using ZedGraph;???????
#13楼    回复  引用    
 wxukie[未注册用户] | 2007-05-19 21:32
private void InitializeComponent()
41 {
42 this.Load += new System.EventHandler(this.Page_Load);
43 this.ZedGraphWeb1.RenderGraph +=new ZedGraphWebControlEventHandler(this.OnRenderGraph);
44
45 }


this.ZedGraphWeb1.RenderGraph +=new ZedGraphWebControlEventHandler(this.OnRenderGraph);
在.NET1.1里面这句是自己手动加上去的.....

#14楼    回复  引用    
 girlbettor[未注册用户] | 2007-05-20 08:10
哈哈,大哥,我可以说是一个字母一个字母比着来了,这句我早加了!谢谢,但是还是不能用
#15楼    回复  引用    
 wxukie[未注册用户] | 2007-05-20 12:27
@girlbettor
呵.你把你的代码发到我邮箱,我帮你看下....

#16楼    回复  引用    
 海之声[未注册用户] | 2007-05-23 20:32
那位给我一份ZedGraph,用在.NET1.1,不胜感激

sztxh@126.com

#17楼    回复  引用    
 wxukie[未注册用户] | 2007-05-23 22:57
@海之声
明天我发你一份

#18楼    回复  引用    
 fd[未注册用户] | 2007-05-25 15:09
re: ZedGraph在Asp.net中的应用 2007-05-23 22:57 | wxukie

@海之声
明天我发你一份
回复 更多评论

#19楼    回复  引用    
 啊黄[未注册用户] | 2007-06-16 11:46
研究了下ComponentOne WebChart的使用,后来才发现,要注册码,要不就会带标志.哎,只好换ZedGraph.身心疲惫..
我也要一份ZedGraph
wt_0735@163.com
wt5673862@hotmail.com

#20楼    回复  引用    
 mamm[未注册用户] | 2007-07-12 10:32
请问数据如何和sqlserver数据库的数据源绑定呢?
我的邮箱:merrymary6000@gmail.com

#21楼    回复  引用    
 xixi[未注册用户] | 2007-08-11 10:59
谁给我发一份看看 zzgcs@eyou.com
#22楼    回复  引用    
 leiming999[未注册用户] | 2007-08-15 19:06
请问给 ZedGraph 的柱形图的每个柱子上面加个
LABEL来显示它的Y值的方法,就像
http://lottery.yninfo.com/web/home.aspx?RequestUrl=Graph/pct.aspx?id=e27b414e-22a5-4a0f-b028-24c94bd731d2
这个效果。

#23楼    回复  引用    
 小小小小小[未注册用户] | 2007-10-13 12:44
我照楼主的方法做出来的为什么本来是每项只有三根柱子.为什么会变成6根
#24楼    回复  引用    
 刚用 ZGW[未注册用户] | 2007-11-25 15:23
大哥啊。 你这个 应该注明 是官方demo的 汉化版本哦。 英文写的XX州。
被你 改为 什么邮局 ...
而且 你 的汉化的 东西 由于改了 namespace 结果错误百出。


好好 整理一下吧。

#25楼    回复  引用    
 cyeyao[未注册用户] | 2007-12-13 21:45
System.IO.DirectoryNotFoundException: 未找到路径“D:\back\wsoa\Webs\ZedGraphImages\ZedGraphWeb1c86fab92-0d2a-4496-a5c1-5823c14c20ce.png”的一部分。 at System.IO.__Error.WinIOError(Int32 errorCode, String str) at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, Boolean useAsync, String msgPath, Boolean bFromProxy) at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share) at ZedGraph.Web.ZedGraphWeb.Render(HtmlTextWriter output)
#26楼    回复  引用    
 tommiy[未注册用户] | 2008-04-24 10:37
十分欠日的家伙...
想不到net1.1有masterPane,直接copy官方例子

#27楼    回复  引用    
 mcq315[未注册用户] | 2008-05-17 10:08
非常感谢大家的共享,我这几天一直在找,我也想要一份ZedGraph研究一下,哪位能发给我一份mcq315@yahoo.cn,非常感谢!
#29楼    回复  引用    
System.IO.DirectoryNotFoundException: 未找到路径“D:\back\wsoa\Webs\ZedGraphImages\ZedGraphWeb1c86fab92-0d2a-4496- a5c1-5823c14c20ce.png”的一部分。

在运行网页之前现在根目录下建一个ZedGraphImages文件夹,不然就有这个错误。

#30楼    回复  引用    
 napolean[未注册用户] | 2009-05-22 13:16
请问谁有winform 的趋势图例子,能发我一份吗,我是新手,谢谢
zhengcg007@163.com




发表评论

昵称: [登录] [注册]

主页:

邮箱:(仅博主可见)

评论内容:

  登录  注册

[使用Ctrl+Enter键快速提交评论]

0 748922




相关文章:

相关链接: