ASP.NET画图系列之实现Bar图(柱状图)

 

前面已经实现了Pie和Curve图,今天我们来实现Bar,就是柱状图,这个的实现和前面2种基本上差不多,还是让我们先看看效果再说.

效果图:

下面开始页面部分:

页面最简单了,还是放一个<asp:Image ID="Image1" runat="server" />

我们看cs部分:

  
  using System.Data.SqlClient;
using System.Drawing;
using System.Drawing.Imaging;
using SkyNet.Chart;
using SkyNet.OA.OAWebUtility;

public partial class SkyNetChart_MyBar : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{

if (!IsPostBack)
{
InitChart();
}
}
private void InitChart()
{

Bar barImg
= new Bar(); //定义一个画图类实例

barImg.Title
= "2008年销售情况统计表";
barImg.TextColor
= Color.Red;
barImg.DS
= GetDSBySale(); //这里若不设置,则采用默认的

string imgPath = "../ChartImages/" + "MyBar.jpg";
ChartHelper.CreateChartByBar(barImg, imgPath, ImageFormat.Jpeg);
this.Image1.ImageUrl = imgPath;
}
private DataSet GetDSBySale()
{
string constr = ""; //这里请大家自行设置

SqlConnection con
= new SqlConnection(constr);
con.Open();
    //注意前面第一个字段对应Keys,第二个字段为Values

string cmdStr = "select CountryName,SaleSum from SaleOfCountry ";
        SqlDataAdapter da = new SqlDataAdapter(cmdStr, con);
DataSet ds
= new DataSet();
da.Fill(ds,
"SaleOfCountry");
return ds;
}

}

 

接下来我们看看Bar里面有什么:

 

Code

 

最后是一个CreateChartByBar方法,我们来看

 

  
   /// <summary>
/// 创建一个Bar图--柱状图
/// </summary>
/// <param name="barImg">Bar类的实例(设置标题、宽度、高度等)</param>
/// <param name="imgPath">生成Bar图的图片路径(相对路径)</param>
/// <param name="imgFormat">生成Bar图的图片格式(如:ImageFormat.Jpeg)</param>
public static void CreateChartByBar(Bar barImg, string imgPath,
    ImageFormat imgFormat)
{
try
{
if (barImg == null)
{
barImg.Title
= "Bar图统计表示例";
barImg.TextColor
= Color.Red;
}

Bitmap bmp
= barImg.CreateImage();
string savePath = HttpContext.Current.Server.MapPath(imgPath);
bmp.Save(savePath, imgFormat);
}
catch (Exception ee)
{
throw ee;
}
}


好了,效果已经出来了,大家可以拿下来自己测试下,若有什么问题请留言或Email给我

我的邮件地址是:gfreesky@gmail.com

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值