这样的,我原来做java的,用过jfreechart 画过柱行图,和饼状图来展示公司的业绩增长报表,现在移至到asp.net上面来了,但是我没有这个作图的经验,希望大侠们赐教一二,最好有个源代码例子 ,谢谢了^_^ 教教我这个菜鸟怎么才能搞出来这个图呢

解决方案 »

  1.   

    http://blog.csdn.net/21aspnet/category/49072.aspx
    个人觉得适合你.不错的网站
      

  2.   

    www.bjcan.com/hengxing/more.asp有收集,还有JS画图
      

  3.   

    使用:Infragistics NetAdvantage
      

  4.   

    使用,MS的OWC可以做出不错的效果
    <object id="ChartSpace1" classid="CLSID:0002E500-0000-0000-C000-000000000046" style="width:640; height: 400"
    VIEWASTEXT>
    </object>写法可以类似这个asp网页:
    <html>
    <head>
    <title>Microsoft Office Chart</title>
    <script Language="VBScript">
    Sub Window_onLoad()
    category="1994" & Chr(9) & "1996" & Chr(9) & "1997" & Chr(9) & "1998" & Chr(9) & "1999"
    ChartSpace1.Clear
    ChartSpace1.Charts.Add
    Set c=ChartSpace1.Constants ChartSpace1.Charts(0).SeriesCollection.Add
    value="120" & Chr(9) & "150" & Chr(9) & "190" & Chr(9) & "250" & Chr(9) & "300"
    ChartSpace1.Charts(0).SeriesCollection(0).Caption="0"
    ChartSpace1.Charts(0).SeriesCollection(0).SetData c.chDimCategories,c.chDataLiteral,category
    ChartSpace1.Charts(0).SeriesCollection(0).SetData c.chDimValues,c.chDataLiteral,value ChartSpace1.Charts(0).SeriesCollection.Add
    value="420" & Chr(9) & "500" & Chr(9) & "630" & Chr(9) & "940" & Chr(9) & "1050"
    ChartSpace1.Charts(0).SeriesCollection(1).Caption="1"
    ChartSpace1.Charts(0).SeriesCollection(1).SetData c.chDimCategories,c.chDataLiteral,category
    ChartSpace1.Charts(0).SeriesCollection(1).SetData c.chDimValues,c.chDataLiteral,value ChartSpace1.Charts(0).SeriesCollection.Add
    value="38" & Chr(9) & "50" & Chr(9) & "53" & Chr(9) & "60" & Chr(9) & "70"
    ChartSpace1.Charts(0).SeriesCollection(2).Caption="2"
    ChartSpace1.Charts(0).SeriesCollection(2).SetData c.chDimCategories,c.chDataLiteral,category
    ChartSpace1.Charts(0).SeriesCollection(2).SetData c.chDimValues,c.chDataLiteral,value ChartSpace1.Charts(0).SeriesCollection.Add
    value="25" & Chr(9) & "27" & Chr(9) & "20" & Chr(9) & "40" & Chr(9) & "60"
    ChartSpace1.Charts(0).SeriesCollection(3).Caption="3"
    ChartSpace1.Charts(0).SeriesCollection(3).SetData c.chDimCategories,c.chDataLiteral,category
    ChartSpace1.Charts(0).SeriesCollection(3).SetData c.chDimValues,c.chDataLiteral,value
    ChartSpace1.Charts(0).HasLegend=True
    ChartSpace1.Charts(0).Type=0
    ChartSpace1.Charts(0).Axes(c.chAxisPositionLeft).NumberFormat="0"
    ChartSpace1.Charts(0).Axes(c.chAxisPositionLeft).MajorUnit=100
    end sub
    Sub SetChart()
      ChartSpace1.Charts(0).Type=frmChart.ChartType.value
    End Sub
    </script>
    </head>
    <body>
    <object id="ChartSpace1" classid="CLSID:0002E500-0000-0000-C000-000000000046" style="width:640; height: 400"
    VIEWASTEXT>
    </object>
    <form name="frmChart" ID="Form1">
    <table>
    <tr>
    <td>
    Chart Type:
    <select name="ChartType" size="1" onChange="SetChart()" ID="Select1">
    <option value="0" selected>0.</option>
    <option value="1">1.</option>
    <option value="2">2.</option>
    <option value="3">3.</option>
    <option value="4">4.</option>
    <option value="5">5.</option>
    <option value="6">6.</option>
    <option value="7">7.</option>
    <option value="8">8.</option>
    <option value="9">9.</option>
    <option value="10">10.</option>
    <option value="11">11.</option>
    <option value="12">12.</option>
    <option value="13">13.</option>
    <option value="14">14.</option>
    <option value="15">15.</option>
    <option value="16">16.</option>
    <option value="17">17.</option>
    <option value="18">18.</option>
    <option value="19">19.</option>
    <option value="20">20.</option>
    <option value="21">21.</option>
    <option value="22">22.</option>
    <option value="23">23.</option>
    <option value="24">24.</option>
    <option value="25">25.</option>
    <option value="26">26.</option>
    <option value="27">27.</option>
    <option value="28">28.</option>
    <option value="29">29.</option>
    <option value="30">30.</option>
    <option value="31">31.</option>
    <option value="32">32.</option>
    <option value="33">33.</option>
    <option value="34">34.</option>
    <option value="35">35.</option>
    <option value="36">36.</option>
    <option value="37">37.</option>
    <option value="38">38.</option>
    <option value="39">39.</option>
    <option value="40">40.</option>
    <option value="41">41.</option>
    <option value="42">42.</option>
    <option value="43">43.</option>
    <option value="44">44.</option>
    <option value="45">45.</option>
    </select>
    </table>
    </form>
    </body>
    </html>
      

  5.   

    OWC有45个图样可以选取,对于一般的要求基本可以符合了,
    在asp.net 后台,给OWC 赋值就可以了
    使用前,
    1。
    <object id="ChartSpace1" classid="CLSID:0002E500-0000-0000-C000-000000000046" style="width:640; height: 400"
    VIEWASTEXT>
    </object>
    2。一个柱状图
    category="1994" & Chr(9) & "1996" & Chr(9) & "1997" & Chr(9) & "1998" & Chr(9) & "1999"
    ChartSpace1.Clear
    ChartSpace1.Charts.Add
    Set c=ChartSpace1.Constants ChartSpace1.Charts(0).SeriesCollection.Add
    value="120" & Chr(9) & "150" & Chr(9) & "190" & Chr(9) & "250" & Chr(9) & "300"
    ChartSpace1.Charts(0).SeriesCollection(0).Caption="0"
    ChartSpace1.Charts(0).SeriesCollection(0).SetData c.chDimCategories,c.chDataLiteral,category
    ChartSpace1.Charts(0).SeriesCollection(0).SetData c.chDimValues,c.chDataLiteral,value
      

  6.   

    如果你想完全使用code画图,请用System.Drawing空间
    具体示例:见孟子e章
      

  7.   

    to:   http://blog.csdn.net/21aspnet/category/49072.aspx 和( ph580(.Net,我喜欢!www.bjcan.com/hengxing) )
    个人觉得适合你.不错的网站我看了你给我的网站,真的很不多,上面有各种code画的图,主要是使用了System.Drawing空间,真的很厉害啊!!!!希望大家都能看看,我已经按照上面的教程,做了一个bar图了,感觉还挺漂亮的to:Gerryjiang() 和   pfengk(音乐虫子)
    谢谢你给我的建议,使用OWC和第三方控件,不过我怎么感觉你给我的代码 比使用code还要难理解啊,可能是个人原因吧,对owc不是很了解,不过个人感觉用SYSTEM.DRAWING来做 看着比较明白,,^_^ 可能是我菜了。还有对于地三方的控件,我还没有接触过,大侠们有没有好的网站,提供一二,让我这个菜鸟可以看看 第三方插件能有多么强大,谢谢大家了
      

  8.   

    我的上面只是一个例子,你放到一个asp文件中去,用浏览器就明白多了,
    实现的是OWC的45个图。
    我们公司的报表(数据量很大,速度还不错,只要求机器装有word就可以了)
    当然用drawing也可以
      

  9.   

    楼上的,能不能给个asp.NET的完整的源代码,我还是看不太明白,你这个代码,我应该放在哪里的?
      

  10.   

    对不起,我上面给出的代码是在asp下面实现的OWC调用,如下:
    http://edobnet.cnblogs.com/archive/2005/12/20/13999.html
    这里有比较详细的关于对OWC在asp.net 下的实现方法,请参考
      

  11.   

    http://blog.csdn.net/ChengKing/category/146827.aspx