使用MSCHAR,把数据库中的内容组织成它所需要的格式,然后再进行显示,可以参考MSDN中的说明。

解决方案 »

  1.   

    自己看
    1、折线图
    <HTML>
    <HEAD>
    <META NAME="GENERATOR" Content="Microsoft FrontPage 4.0">
    <TITLE> &Ecirc;&yacute;&frac34;&Yacute;&Iuml;&Ocirc;&Ecirc;&frac34;&Iacute;&frac14; </TITLE>
    <SCRIPT ID="clientEventHandlersJS" LANGUAGE="javascript">
    function window_onload() 
    {
    t=0;
    mschart1.chartType =1; //&Iacute;&frac14;&ETH;&Icirc;&Ntilde;ù&Ecirc;&frac12;&pound;&ordm;3D&Ouml;ù&Iacute;&frac14; mschart1.Title.VtFont.Size    =10; //±ê&Igrave;&acirc;&acute;ó&ETH;&iexcl;&pound;&ordm;10
    mschart1.Title.VtFont.VtColor.Blue =true; //±ê&Igrave;&acirc;&Ntilde;&Otilde;&Eacute;&laquo;&pound;&ordm;&Agrave;&para;&Eacute;&laquo;
    mschart1.Title.VtFont.Style        =1; //±ê&Igrave;&acirc;&ETH;&Icirc;&Ecirc;&frac12;&pound;&ordm;&acute;&Ouml;&Igrave;&aring;&iexcl;&cent;&ETH;±&Igrave;&aring;
    mschart1.TitleText                 =document.form1.chtitle.value; //±ê&Igrave;&acirc;&Auml;&Uacute;&Egrave;&Yacute; mschart1.Legend.VtFont.Size           =9; //&Iuml;&micro;&Aacute;&ETH;&Icirc;&Auml;×&Ouml;×&Ouml;&Igrave;&aring;&acute;ó&ETH;&iexcl;&pound;&ordm;9
    mschart1.Legend.Location.LocationType =4; //&Iuml;&micro;&Aacute;&ETH;&Icirc;&Auml;×&Ouml;&Iuml;&Ocirc;&Ecirc;&frac34;&Icirc;&raquo;&Ouml;&Atilde;&pound;&ordm;&Oacute;&Ograve;&sup2;&iquest;
    mschart1.ShowLegend   =true;
    if (document.form1.ccount.value==1)
    { mschart1.ShowLegend             =false; } //&Egrave;&ccedil;&sup1;&ucirc;×&Uuml;&Iuml;&szlig;&Ecirc;&yacute;&Icirc;&ordf;1&pound;&not;&Iuml;&micro;&Aacute;&ETH;&Icirc;&Auml;×&Ouml;&sup2;&raquo;&Iuml;&Ocirc;&Ecirc;&frac34; mschart1.Plot.Axis(0).Labels(1).VtFont.Size  =10; //X&Ouml;á&acute;ó&ETH;&iexcl;&pound;&ordm;10
    mschart1.Plot.Axis(1).Labels(1).VtFont.Size  =10; //Y&Ouml;á&acute;ó&ETH;&iexcl;&pound;&ordm;10
    mschart1.Plot.Axis(2).Labels(1).VtFont.Size  =10; //Z&Ouml;á&acute;ó&ETH;&iexcl;&pound;&ordm;10
    mschart1.Plot.Axis(0).Labels(1).VtFont.Style =1; //X&Ouml;á&ETH;&Icirc;&Ecirc;&frac12;&pound;&ordm;&acute;&Ouml;&Igrave;&aring; mschart1.ColumnCount =document.form1.ccount.value; //×&Uuml;&sup1;&sup2;&Iuml;&szlig;&Ecirc;&yacute;
    mschart1.RowCount =document.form1.rcount.value; //&Atilde;&iquest;&Iuml;&szlig;&Eacute;&Iuml;&micro;&atilde;&Ecirc;&yacute; for (i=0; i<document.form1.rcount.value; i++)
    {
    for (j=0; j<document.form1.ccount.value; j++)

    mschart1.Row    =i+1;
    mschart1.Column =j+1; if (document.form1.ccount.value>1)
    { mschart1.ColumnLabel =document.form1.cname(j).value; }
    else
    { mschart1.ColumnLabel =document.form1.cname.value;    } if ((document.form1.rcount.value*document.form1.ccount.value)>1)
    { mschart1.Data =document.form1.rc_data(t).value; }
    else
    { mschart1.Data =document.form1.rc_data.value;    } t++;
    }
    if (document.form1.rcount.value>1)
    { mschart1.RowLabel =document.form1.rname(i).value; }
    else
    { mschart1.RowLabel =document.form1.rname.value; }
    }
    }function select1_onchange()
    {
    mschart1.chartType =select1.value
    mschart1.Plot
    }
    </SCRIPT>
    </HEAD><BODY TOPMARGIN="0" LANGUAGE="javascript" ONLOAD="return window_onload()">
    <TABLE BGCOLOR="#EEEEEE">
    <TR ALIGN="center"><TD>
    <TABLE WIDTH=100%><TR align=center><TD><Font size=2 color=blue><b><%=Request.Form("chtitle")%></b></FONT></TD></TR></TABLE>
    <HR COLOR="#F3C905">
    <OBJECT CLASSID="clsid:3A2B370C-BA0A-11D1-B137-0000F8753F5D" CODEBASE="mschart.cab" DATA="" ID="mschart1" STYLE="HEIGHT:350px; LEFT:0px; TOP:0px; WIDTH:700px"></OBJECT> 
    <BR>
    <HR COLOR="#F3C905">
    <FONT SIZE="2" COLOR="blue"><B>&Ccedil;&euml;&Ntilde;&iexcl;&Ocirc;&ntilde;&Iacute;&frac14;±í&Iuml;&Ocirc;&Ecirc;&frac34;·&frac12;&Ecirc;&frac12;:
    <SELECT NAME="select1" LANGUAGE="javascript" ONCHANGE="return select1_onchange()">
    <OPTION value=1>&para;&thorn;&Icirc;&not;&Ouml;±·&frac12;&Iacute;&frac14;</OPTION>
    <OPTION value=0>&Egrave;&yacute;&Icirc;&not;&Ouml;±·&frac12;&Iacute;&frac14;</OPTION>
    <OPTION value=3>&para;&thorn;&Icirc;&not;&Otilde;&Ucirc;&Iuml;&szlig;&Iacute;&frac14;</OPTION>
    <OPTION value=2>&Egrave;&yacute;&Icirc;&not;&Otilde;&Ucirc;&Iuml;&szlig;&Iacute;&frac14;</OPTION>
    <OPTION value=5>&para;&thorn;&Icirc;&not;&Atilde;&aelig;&raquo;&yacute;&Iacute;&frac14;</OPTION>
    <OPTION value=4>&Egrave;&yacute;&Icirc;&not;&Atilde;&aelig;&raquo;&yacute;&Iacute;&frac14;</OPTION>
    </SELECT>
    &nbsp;&nbsp;
    °&aelig;&Egrave;¨&Euml;ù&Oacute;&ETH;&pound;&ordm;&Eacute;&Iuml;&ordm;&pound;&Ograve;×&frac12;&Uuml;&frac14;&AElig;&Euml;&atilde;&raquo;ú&frac14;&frac14;&Ecirc;&otilde;&Oacute;&ETH;&Iuml;&THORN;&sup1;&laquo;&Euml;&frac34;</B></font>
    <HR COLOR="#F3C905">
    </TD></TR>
    </TABLE> <FORM NAME="form1" ID="form1">
    <input type="hidden" name="chtitle" id="chtitle" value="" > <input type="hidden" name="ccount"  id="ccount"  value=<%=Request.Form("ccount")%>    >
    <%for i=1 to Request.Form("ccount")%>
    <input type="hidden" name="cname"   id="cname"   value="<%=Request.Form("cname")(i)%>">
    <%next%> <input type="hidden" name="rcount"  id="rcount"  value=<%=Request.Form("rcount")%>    >
    <%for i=1 to Request.Form("rcount")%>
    <input type="hidden" name="rname"   id="rname"   value="<%=Request.Form("rname")(i)%>">
    <%next%> <%for i=1 to Request.Form("rcount")*Request.Form("ccount")%>
    <%
    if Request.Form("rc_data_type")=1 then
    xvalue = Request.Form("rc_data1")(i)
    end if
    if Request.Form("rc_data_type")=2 then
    xvalue = Request.Form("rc_data2")(i)
    end if
    if Request.Form("rc_data_type")=3 then
    xvalue = Request.Form("rc_data3")(i)
    end if
    %>
    <input type="hidden" name="rc_data" id="rc_data" value=<%=xvalue%>>
    <%next%>
    </FORM>
    </BODY>
    </HTML>
    2、饼图
    <HTML>
    <HEAD>
    <META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
    <TITLE> &Ecirc;&yacute;&frac34;&Yacute;&Iuml;&Ocirc;&Ecirc;&frac34;&Iacute;&frac14; </TITLE>
    <SCRIPT ID="clientEventHandlersJS" LANGUAGE="javascript">
    function window_onload() 
    {
    t=0;
    mschart1.chartType =14; //&Iacute;&frac14;&ETH;&Icirc;&Ntilde;ù&Ecirc;&frac12;&pound;&ordm;±&yacute;&Iacute;&frac14; mschart1.Title.VtFont.Size         =10; //±ê&Igrave;&acirc;&acute;ó&ETH;&iexcl;&pound;&ordm;10
    mschart1.Title.VtFont.VtColor.Blue =true; //±ê&Igrave;&acirc;&Ntilde;&Otilde;&Eacute;&laquo;&pound;&ordm;&Agrave;&para;&Eacute;&laquo;
    mschart1.Title.VtFont.Style        =1; //±ê&Igrave;&acirc;&ETH;&Icirc;&Ecirc;&frac12;&pound;&ordm;&acute;&Ouml;&Igrave;&aring;&iexcl;&cent;&ETH;±&Igrave;&aring;
    mschart1.TitleText                 =document.form1.chtitle.value; //±ê&Igrave;&acirc;&Auml;&Uacute;&Egrave;&Yacute; mschart1.Legend.VtFont.Size           =9; //&Iuml;&micro;&Aacute;&ETH;&Icirc;&Auml;×&Ouml;×&Ouml;&Igrave;&aring;&acute;ó&ETH;&iexcl;&pound;&ordm;9
    mschart1.Legend.Location.LocationType =6; //&Iuml;&micro;&Aacute;&ETH;&Icirc;&Auml;×&Ouml;&Iuml;&Ocirc;&Ecirc;&frac34;&Icirc;&raquo;&Ouml;&Atilde;&pound;&ordm;&micro;×&sup2;&iquest;
    mschart1.ShowLegend                   =true; //&Iuml;&micro;&Aacute;&ETH;&Icirc;&Auml;×&Ouml;&Iuml;&Ocirc;&Ecirc;&frac34; mschart1.Plot.Axis(0).Labels(1).VtFont.Size  =10; //X&Ouml;á&acute;ó&ETH;&iexcl;&pound;&ordm;10
    mschart1.Plot.Axis(1).Labels(1).VtFont.Size  =10; //Y&Ouml;á&acute;ó&ETH;&iexcl;&pound;&ordm;10
    mschart1.Plot.Axis(2).Labels(1).VtFont.Size  =10; //Z&Ouml;á&acute;ó&ETH;&iexcl;&pound;&ordm;10
    mschart1.Plot.Axis(0).Labels(1).VtFont.Style =1; //X&Ouml;á&ETH;&Icirc;&Ecirc;&frac12;&pound;&ordm;&acute;&Ouml;&Igrave;&aring; mschart1.ColumnCount =document.form1.ccount.value; //&Atilde;&iquest;&iquest;é&Eacute;&Iuml;·&Ouml;&cedil;&icirc;&Ecirc;&yacute;
    mschart1.RowCount    =document.form1.rcount.value; //×&Uuml;&sup1;&sup2;&iquest;é&Ecirc;&yacute; for (i=0; i<document.form1.rcount.value; i++)
    {
    for (j=0; j<document.form1.ccount.value; j++)

    mschart1.Row    =i+1;
    mschart1.Column =j+1; if (document.form1.ccount.value>1)
    { mschart1.ColumnLabel =document.form1.cname(j).value+"("+document.form1.rc_data(j).value+"%"; 
      for (x=1; x<document.form1.rcount.value; x++)
      { mschart1.ColumnLabel =mschart1.ColumnLabel+", "+document.form1.rc_data(document.form1.ccount.value*x+j).value+"%"; }
      mschart1.ColumnLabel =mschart1.ColumnLabel+")";
    }
    else
    { mschart1.ColumnLabel =document.form1.cname.value; } if ((document.form1.rcount.value*document.form1.ccount.value)>1)
    { mschart1.Data =document.form1.rc_data(t).value; }
    else
    { mschart1.Data =document.form1.rc_data.value;    } t++;
    }
    if (document.form1.rcount.value>1)
    { mschart1.RowLabel =document.form1.rname(i).value; }
    else
    { mschart1.RowLabel =document.form1.rname.value;    }
    }
    }function select1_onchange() 
    {
    mschart1.chartType =select1.value 
    mschart1.Plot
    }
    </SCRIPT>
    </HEAD><BODY TOPMARGIN="0" LANGUAGE="javascript" ONLOAD="return window_onload()">
    <TABLE BGCOLOR="#EEEEEE">
    <TR ALIGN="center"><TD>
    <TABLE WIDTH=100%><TR align=center><TD><Font size=2 color=blue><b><%=Request.Form("chtitle")%></b></FONT></TD></TR></TABLE>
    <HR COLOR="#F3C905">
    <OBJECT CLASSID="clsid:3A2B370C-BA0A-11D1-B137-0000F8753F5D" CODEBASE="mschart.cab" DATA="" ID="mschart1" STYLE="HEIGHT:350px; LEFT:0px; TOP:0px; WIDTH:750px"></OBJECT> 
    <BR>
    <HR COLOR="#F3C905">
    <FONT SIZE="2" COLOR="blue"><B>&Ccedil;&euml;&Ntilde;&iexcl;&Ocirc;&ntilde;&Iacute;&frac14;±í&Iuml;&Ocirc;&Ecirc;&frac34;·&frac12;&Ecirc;&frac12;:
    <SELECT NAME="select1" LANGUAGE="javascript" ONCHANGE="return select1_onchange()">
    <OPTION value=14>±&yacute;&Iacute;&frac14;</OPTION>
    <OPTION value=1>&para;&thorn;&Icirc;&not;&Ouml;±·&frac12;&Iacute;&frac14;</OPTION>
    <OPTION value=0>&Egrave;&yacute;&Icirc;&not;&Ouml;±·&frac12;&Iacute;&frac14;</OPTION>
    </SELECT>
    &nbsp;&nbsp;
    °&aelig;&Egrave;¨&Euml;ù&Oacute;&ETH;&pound;&ordm;&Eacute;&Iuml;&ordm;&pound;&Ograve;×&frac12;&Uuml;&frac14;&AElig;&Euml;&atilde;&raquo;ú&frac14;&frac14;&Ecirc;&otilde;&Oacute;&ETH;&Iuml;&THORN;&sup1;&laquo;&Euml;&frac34;</B></font>
    <HR COLOR="#F3C905">
    </TD></TR>
    </TABLE> <FORM NAME="form1" ID="form1">
    <input type="hidden" name="chtitle" id="chtitle" value="" > <%
    ccount = Request.Form("ccount")
    if CInt(Request.Form("ccount"))>CInt(Request.Form("rc_data_point")) then
    ccount = Request.Form("rc_data_point")+1
    end if
    %>
    <input type="hidden" name="ccount"  id="ccount"  value=<%=ccount%>                    >
    <%for i=1 to Request.Form("ccount")%>
    <%if i=Request.Form("rc_data_point")+1 then%>
    <input type="hidden" name="cname" id="cname" value="&AElig;&auml;&Euml;&ucirc;">
    <%
    exit for
      end if
    %>
    <input type="hidden" name="cname"   id="cname"   value="<%=Request.Form("cname")(i)%>">
    <%next%> <input type="hidden" name="rcount"  id="rcount"  value="<%=Request.Form("rcount")%>"  >
    <%for i=1 to Request.Form("rcount")%>
    <input type="hidden" name="rname"   id="rname"   value="<%=Request.Form("rname")(i)%>">
    <%next%> <%rc_data_point = 0%>
    <%xvalue        = 0%>
    <%if Request.Form("rcount")>=1 then 
      for i=1 to Request.Form("ccount")%>
    <%
    xvalue = xvalue + Request.Form("rc_data1")(i) if (rc_data_point<CInt(Request.Form("rc_data_point"))) or (rc_data_point=CInt(Request.Form("ccount"))-1) then
    %>
    <input type="hidden" name="rc_data" id="rc_data" value=<%=formatnumber(xvalue,2,-1)%>>
    <%
    xvalue = 0
    end if rc_data_point = rc_data_point+1
    if rc_data_point mod CInt(Request.Form("ccount"))=0 then
    rc_data_point = 0
    end if
    %>
    <%next
      end if%> <%if Request.Form("rcount")>=2 then 
      for i=1 to Request.Form("ccount")%>
    <%
    xvalue = xvalue + Request.Form("rc_data2")(i) if (rc_data_point<CInt(Request.Form("rc_data_point"))) or (rc_data_point=CInt(Request.Form("ccount"))-1) then
    %>
    <input type="hidden" name="rc_data" id="rc_data" value=<%=formatnumber(xvalue,2,-1)%>>
    <%
    xvalue = 0
    end if rc_data_point = rc_data_point+1
    if rc_data_point mod CInt(Request.Form("ccount"))=0 then
    rc_data_point = 0
    end if
    %>
    <%next
      end if%> <%if Request.Form("rcount")>=3 then 
      for i=1 to Request.Form("ccount")%>
    <%
    xvalue = xvalue + Request.Form("rc_data3")(i) if (rc_data_point<CInt(Request.Form("rc_data_point"))) or (rc_data_point=CInt(Request.Form("ccount"))-1) then
    %>
    <input type="hidden" name="rc_data" id="rc_data" value=<%=formatnumber(xvalue,2,-1)%>>
    <%
    xvalue = 0
    end if rc_data_point = rc_data_point+1
    if rc_data_point mod CInt(Request.Form("ccount"))=0 then
    rc_data_point = 0
    end if
    %>
    <%next
      end if%>
    </FORM>
    </BODY>
    </HTML>
    上面的数据从上个面传来。
      

  2.   

       我按照这个例子试了一下,但是在调试的时候,却发现下面类似的语句
       mschart1.Data =document.form1.rc_data.value
       其中form1是不认的。
       表单form1应该是和mschart1在同一个asp中实现的吧。
       不知问题出在什么地方