首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

asp.net MVC2实现柱状图和折线图的例子

2013-02-05 
求一个asp.net MVC2实现柱状图和折线图的例子求一个MVC2实现柱状图和折线图的例子,以前没做过柱状图和折线

求一个asp.net MVC2实现柱状图和折线图的例子
  求一个MVC2实现柱状图和折线图的例子,以前没做过柱状图和折线图,我是用MVC2做的一个项目,后来加了需求,需要统计财务,各个部门的工资状态 ,各个部门每个月发了多少工资,用柱状图显示,然后还要弄一个折线图,显示那个比率,比如说增长了多少...急!求高手指点,可以发我的邮箱(vipchary@163.com),希望能详细一点. mvc asp.net
[解决办法]
不是有CHART控件嘛?
[解决办法]
现在的人怎么都这么懒。。。都告诉你用chart了,你百度搜MVC CHART例子一把一把的,挑自己适用的。唉。。。
[解决办法]
柱状图表代码:

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;

public partial class Result : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        string cmdtxt1 = "server=(local);database=db_13;Uid=sa;Pwd=";
        SqlConnection Con = new SqlConnection(cmdtxt1);
        Con.Open();
        SqlCommand Com = new SqlCommand("select * from tb_06 where ID=" + Request["ID"] + "", Con);
        SqlDataReader dr = Com.ExecuteReader();
        dr.Read();
        string strContent = null;
        if (dr.HasRows)
        {
            strContent = dr["Content"].ToString();
        }
        dr.Close();
        decimal decNumAll = GetNumAll(strContent);//得到所有票数,C#在除法运算中需用decimal类型,否则将会把小数点后的数去掉
        Response.Write(GetResult(strContent, decNumAll));
    }

/// <summary>
/// 显示图象
/// </summary>
/// <param name="strContent">相关主题下的内容</param>
/// <param name="decNumAll">所有的票数</param>
/// <returns></returns>
    public string GetResult(string strContent, decimal decNumAll)
    {
        string[] arrContent = strContent.Split('
[解决办法]
');
        string strBody = "<body style=text-align:center><table width=60% border=1 cellpadding=0 cellspacing=0 text-align:center>\n";
        foreach (string strContentIN in arrContent)
        {
            string strItemName = strContentIN.Split(',')[1].ToString();//得到选项名称


            decimal decItemNum = Convert.ToDecimal(strContentIN.Split(',')[0]);//得到选项的投票数
            decimal decPercent = GetPercent(decItemNum, decNumAll) * 100;//得到百分比
            string strPercent = decPercent.ToString();//将百分比转为字符型
            if (strPercent.Length > 5)//如果百分比结果长度超过5位
            {
                strPercent = strPercent.Substring(0, 5);//将百分比的余数截短为“00.00”
            }
            strBody += "<tr><td width=100 style=font-size:9pt;text-align:center>" + strItemName + "</td><td width=50 style=font-size:9pt;color=red;text-align:center>" + decItemNum.ToString() + "票</td><td style=font-size:9pt><img src=Images/bar1.gif height=10 width=" + strPercent + "%>" + strPercent + "%</td></tr>\n";
        }
        strBody += "</table></body>";
        return strBody;
    }
 

/// <summary>
/// 票数求和
/// </summary>
/// <param name="strNum">当前所要操作的字串</param>
/// <returns></returns>
    public decimal GetNumAll(string strNum)
    {
        decimal decNumAll = 0;
        string[] arrNum = strNum.Split('
[解决办法]
');
        foreach (string strNumIN in arrNum)
        {
            decNumAll += Convert.ToInt32(strNumIN.Split(',')[0].ToString());//截取第零位
        }
        return decNumAll;
    }
 
/// <summary>
/// 百分比
/// </summary>
/// <param name="decItem">当前选项本身的票数</param>
/// <param name="decNumAll">所有的票数</param>
/// <returns></returns>
    public decimal GetPercent(decimal decItem, decimal decNumAll)
    {
        if (decNumAll == 0)//如果总票数是零
        {
            decNumAll++;//加一,避免除0出错
        }
        decimal decPercent = decItem / decNumAll;
        return decPercent;
    }
}


希望对你有帮助

热点排行