gfreesky博客


    留下自己的脚印是一件很惬意的事:)
    博客园--美好愿望 美好生活......
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

ASP.NET画图系列之实现Curve图(曲线图)

Posted on 2008-10-26 13:31  gfreesky  阅读(2859)  评论(2编辑  收藏  举报

ASP.NET画图系列,今天要实现的是Curve图,如果各位朋友有什么不明白的可以留言或Email给我,我的Email:gfreesky@gmail.com

废话不多说,先看下效果:

页面部分,还是和Pie一样

 

<form id="form1" runat="server">
        
<div>
            
<asp:Image ID="Image1" runat="server" />
        
</div>
    
</form>

 

cs代码:

 

using System.Drawing; //Bitmap
using System.Drawing.Imaging; //ImageFormat
using SkyNet.Chart;
using SkyNet.OA.OAWebUtility;


public partial class SkyNetChart_MyCurve : System.Web.UI.Page
{
    
protected void Page_Load(object sender, EventArgs e)
    {
        
if (!IsPostBack)
        {
            InitChart();
        }
    }
    
private void InitChart()
    {
        Curve curveImg 
= new Curve(); //定义一个画图类实例
        curveImg.Title = "2008年销售情况统计表";
        curveImg.Width 
= 900;
        curveImg.Height 
= 500;
        curveImg.TextColor 
= Color.Red;

        
string imgPath = "../ChartImages/" + "MyCurve.jpg";
        
string savePath = Server.MapPath(imgPath);
        ChartHelper.CreateChartByCurve(curveImg, imgPath, ImageFormat.Jpeg);
        
this.Image1.ImageUrl = imgPath;
    }

}

 


上面有不明白的地方,请参照ASP.NET画图系列之实现Pie图(圆饼图)
接下来是Curve类
 
Code

下面是CreateChartByCurve方法:


public static void CreateChartByCurve(Curve curveImg, string imgPath, ImageFormat imgFormat)
        {
            
try
            {
                
if (curveImg == null)
                {
                    curveImg.Title 
= "Curve图统计表示例";
                    curveImg.Width 
= 900;
                    curveImg.Height 
= 500;
                    curveImg.TextColor 
= Color.Red;
                }
                Bitmap bmp 
= curveImg.CreateImage();
                
string savePath = HttpContext.Current.Server.MapPath(imgPath);
                bmp.Save(savePath, imgFormat);
            }
            
catch (Exception ee)
            {
                
throw ee;
            }
        }

好Curve图也已经画好了,效果还可以,如果您有什么更好的想法或已经,欢迎您留言或Email给我,我的邮件
地址是:gfreesky@gmail.com