RT 如何用chart实现3D柱形图   或者其他方式在ASP.NET中实现3D柱形图如果有demo的请邮箱[email protected]  非常感谢

解决方案 »

  1.   

    我有chart 的帮助文档。里面很详细!
      

  2.   


    demo没有! 里面有示意图,有属性设置
      

  3.   

    DEMO已经发你邮箱([email protected])
      

  4.   

    AppearanceType 属性可以设置3D
      

  5.   


    Office Web Components(简称OWC)
      

  6.   

    这里也是OWChttp://www.alixixi.com/weBuild/subject4/20051213141483.html
      

  7.   

    直接用vs2010中的webchart控件即可,直接拖到页面,然后添加数据点即可!
      

  8.   

    owc我觉得用起来还是不错的
    给个链接你自己找找吧http://www.123aspx.com/Directory.aspx?dir=251
      

  9.   

    很感谢 楼上各位的帮忙  有没有做个的呢 vs2008 ASP.NET实现3D柱形图  效果12楼
      

  10.   

    我觉得owc就可以啊,你可以修改里面的属性设置。不知道你具体要什么效果
      

  11.   

    我给你发了全套的demo,参考着引用就好。查看下吧,有问题再邮箱我吧。
      

  12.   

    DEMO
      

  13.   

    为什么蛋疼?没收到demo?还是不知道如何使用?我给你贴段代码:
    首先要引用:FusionCharts.dll
    然后看过demo中的示例后就知道实际上是一个拼图形XML数据的过程,这个过程可以用JQUERY实现字符串拼接,也可以通过.cs中拼接实现,我给你发一段.cs中拼接的代码做参考吧。
    litChart.Text  是.net控件,类似panel直接拖拽到 aspx界面即可。StringBuilder xmlData = new StringBuilder();
                StringBuilder strData = new StringBuilder();
                //FusionCharts:横坐标标签较长时显示方式
                //1.wrap方式labelDisplay='WRAP'
                //2.旋转显示labelDisplay='Rotate' slantLabels='1' 45度旋转或90度旋转labelDisplay='ROTATE' 
                //3.交错显示labelDisplay='Stagger' staggerLines='n' n=3
                //4.每隔N个显示一个标签labelStep='4' showValues='0'
                //5.截取显示,在tooltip中全显示            xmlData.Append("<chart subcaption='行业资金流量' decimals='2' decimalPrecision = '2' limitsDecimalPrecision='2' showLabels='1' showValues='0'>");
    //拼图形显示元素*****重要点
    strData.AppendFormat("<set label='" + strXValue + "' value='{0}' Color='" + strColor + "' toolText='" + dtInflux.Rows[i]["VocationName"] + ",净流入(万元):" + fValue + "'/>", fValue);
    xmlData.Append(strData.ToString());            xmlData.Append("<styles>");
                xmlData.Append("<definition>");
                xmlData.Append("<style name='LegFont' type='font' size='12'/>");
                xmlData.Append("<style name='CaptionFont' type='font' size='15'/>");
                xmlData.Append("</definition>");
                xmlData.Append("<application>");
                xmlData.Append("<apply toObject='CAPTION' styles='CaptionFont' />");
                xmlData.Append("<apply toObject='SUBCAPTION' styles='CaptionFont' />");
                xmlData.Append("<apply toObject='DATALABELS' styles='LegFont' />");
                xmlData.Append("<apply toObject='TOOLTIP' styles='LegFont' />");
                xmlData.Append("</application>");
                xmlData.Append("</styles>");            xmlData.Append("</chart>");            //MSColumnLine3D.swf 一个Y轴的3D组合图            //MSColumn3DLineDY.swf 双Y轴3D组合图MSCombiDY2D.swf
                //Create the chart - MS Column 3D Line Combination Chart with data contained in strXML
                litChart.Text = FusionCharts.RenderChartHTML("../FusionCharts/Column3D.swf", "", xmlData.ToString(), strFlashName, "700", "300", false);
      

  14.   

    你给我的确实我没看懂  不过还是很感谢你  可不可以搞一个可以运行的demo呢 搞定马上结贴了
      

  15.   

    FusionCharts.RenderChartHTML("../FusionCharts/Column3D.swf"以上的swf的选择是根据你的应用选择的,自己想展示什么图形,就选择什么图形的swf,进行参数设置应用即可。//拼图形显示元素*****重要点(此处是需要循环赋值的)
    for(*******)
    {
    strData.AppendFormat("<set label='" + strXValue + "' value='{0}' Color='" + strColor + "' toolText='" + dtInflux.Rows[i]["VocationName"] + ",净流入(万元):" + fValue + "'/>", fValue);
    xmlData.Append(strData.ToString());
    }
      

  16.   

    高手 直接给我个demo吧 我看着不太明白 时间紧迫 
      

  17.   

    demo都发你邮箱啦,没收到?建立一个虚拟目录,然后浏览:http://localhost/FusionCharts_Evaluation-v3.2/Gallery/index.html
    有很多种图形,选择
    http://localhost/FusionCharts_Evaluation-v3.2/Gallery/Column3D/Col3D2.html
    显示3D柱形图,存HTML+JQUERY的形式实现。如果用想在.cs中实现就用刚我给你的代码然后aspx中显示如下就可以用了,前提保证DLL引用了,以及swf文件路径正确。
    aspx中显示:
    <script src="../FusionCharts/FusionCharts.js" type="text/javascript"></script>
    <form id="form1" runat="server">
        <asp:Literal ID="litChart" runat="server"></asp:Literal>
    </form>
      

  18.   

      调用JQUER 的 插件  有个pei3d falsh
      之前做了一个饼图的  直接Append 拼数据上去  
     柱形也差不多这
      

  19.   


    你都两颗星啦,应该是个高手了json是一种方式,另一种也可以用简单的 拼接 html,然后作为数据源展示的方式,那个.cs文件中的写法,就是后台拼的整个HTML的形式,最后输出在aspx的页面上,你简单试试应该很容易的,别慌张,别太着急,看到demo尝试一个后就都明白了。
      

  20.   

    表示FusionCharts 很强大,很好用
      

  21.   

    FusionCharts  很强大,LZ要否,有例子
      

  22.   

    http://www.cnblogs.com/jiangbiao/archive/2011/09/09/2172635.html附DEMO下载!
      

  23.   

    http://www.alixixi.com/weBuild/subject4/20051213141483.html
      

  24.   

    也推荐一个
    highcharts
    这个也非常的强大。
      

  25.   

    FusionCharts 是用flash实现的 微软的也有。
      

  26.   

    FusionCharts 是用flash实现的 微软的也有。
      

  27.   

    看这个吧,什么里面图都有。
    http://demos.devexpress.com/XtraChartsDemos/BarViewTypes/Bar3DSeries.aspx
      

  28.   

    真無聊,用它就KOLhttp://www.dotnetcharting.com/
      

  29.   

    看这个吧利用DevExpress的WebChartControl绘制柱状图,线状图与饼状图示例
    显示结果如下:
      

  30.   

    http://download.csdn.net/detail/fengyarongaa/2911624我的资源有一套这样的东西  自己 找合适的样式
      

  31.   

    添加JS<script type="text/javascript" src="Javascript/FusionCharts.js"></script>
    <asp:Label ID="Label2" runat="server" Text=""></asp:Label>添加引用,然后根据你的后台数据取出数据拼接成FusionCharts能识别的string,付给Label就可以了。using InfoSoftGlobal;
    Label2.Text = CreatChart();
    public string CreatChart()
            {
                string strXML;
                strXML = "";
                string T = "";
                string Charts = "";
                if (DropDownList1.SelectedValue == "1" || DropDownList1.SelectedValue == "10")
                {
                    string SelectAll = string.Format("select * from qa2012");
                    strXML += "<graph caption='" + this.DropDownList1.SelectedItem.Text + "' xAxisName='选项' yAxisName='数目(总数:" + cs.ReturnDataSet(SelectAll).Tables[0].Rows.Count + ")' BaseFontSize='17' decimalPrecision='0' formatNumberScale='0'>";
                    if (DropDownList1.SelectedValue == "1")
                    {
                        for (int i = 0; i < 11; i++)
                        {
                            char A = 'A';
                            int S = Convert.ToInt32(A) + i;
                            T = Convert.ToChar(S).ToString();
                            string Sql = string.Format("SELECT * FROM QA2012 WHERE {0} LIKE '%{1}%'", "a" + DropDownList1.SelectedValue.ToString(), T.ToString());
                            string Result = string.Format("<set name='{0}' value='{1}'/>", T, cs.ReturnDataSet(Sql).Tables[0].Rows.Count);
                            strXML += Result;
                        }
                        strXML += "</graph>";
                        Charts = FusionCharts.RenderChart("FusionCharts/Column3D.swf", "", strXML, "My", "700", "433", false, false);                }
                    else
                    {                    for (int i = 0; i < 4; i++)
                        {
                            char A = 'A';
                            int S = Convert.ToInt32(A) + i;
                            T = Convert.ToChar(S).ToString();
                            string Sql = string.Format("SELECT * FROM QA2012 WHERE {0} LIKE '%{1}%'", "a" + DropDownList1.SelectedValue.ToString(), T.ToString());
                            string Result = string.Format("<set name='{0}' value='{1}'/>", T, cs.ReturnDataSet(Sql).Tables[0].Rows.Count);
                            strXML += Result;
                        }
                        strXML += "</graph>";
                        Charts = FusionCharts.RenderChart("FusionCharts/Column3D.swf", "", strXML, "My", "700", "433", false, false);
                    }
                }
                else
                {
                    string SelectAll = string.Format("select * from qa2012");
                    strXML += "<graph caption='" + this.DropDownList1.SelectedItem.Text + "' xAxisName='选项' yAxisName='数目(总数:" + cs.ReturnDataSet(SelectAll).Tables[0].Rows.Count + ")' BaseFontSize='17' decimalPrecision='0' formatNumberScale='0'>";
                    if (DropDownList1.SelectedValue == "2" || DropDownList1.SelectedValue == "3")
                    {
                        for (int i = 0; i < 5; i++)
                        {
                            char A = 'A';
                            int S = Convert.ToInt32(A) + i;
                            T = Convert.ToChar(S).ToString();
                            string Sql = string.Format("SELECT * FROM QA2012 WHERE {0} LIKE '%{1}%'", "a" + DropDownList1.SelectedValue.ToString(), T.ToString());
                            string Result = string.Format("<set name='{0}' value='{1}'/>", T, cs.ReturnDataSet(Sql).Tables[0].Rows.Count);
                            strXML += Result;
                        }
                        strXML += "</graph>";
                        Charts = FusionCharts.RenderChart("FusionCharts/Pie3D.swf", "", strXML, "My", "700", "433", false, false);
                    }                else if (DropDownList1.SelectedValue == "4")
                    {
                        for (int i = 0; i < 3; i++)
                        {
                            char A = 'A';
                            int S = Convert.ToInt32(A) + i;
                            T = Convert.ToChar(S).ToString();
                            string Sql = string.Format("SELECT * FROM QA2012 WHERE {0} LIKE '%{1}%'", "a" + DropDownList1.SelectedValue.ToString(), T.ToString());
                            string Result = string.Format("<set name='{0}' value='{1}'/>", T, cs.ReturnDataSet(Sql).Tables[0].Rows.Count);
                            strXML += Result;
                        }
                        strXML += "</graph>";
                        Charts = FusionCharts.RenderChart("FusionCharts/Pie3D.swf", "", strXML, "My", "700", "433", false, false);
                    }
                    else if (DropDownList1.SelectedValue == "20")
                    {
                        for (int i = 0; i < 2; i++)
                        {
                            char A = 'A';
                            int S = Convert.ToInt32(A) + i;
                            T = Convert.ToChar(S).ToString();
                            string Sql = string.Format("SELECT * FROM QA2012 WHERE {0} LIKE '%{1}%'", "a" + DropDownList1.SelectedValue.ToString(), T.ToString());
                            string Result = string.Format("<set name='{0}' value='{1}'/>", T, cs.ReturnDataSet(Sql).Tables[0].Rows.Count);
                            strXML += Result;
                        }
                        strXML += "</graph>";
                        Charts = FusionCharts.RenderChart("FusionCharts/Pie3D.swf", "", strXML, "My", "700", "433", false, false);
                    }
                    else
                    {
                        if (DropDownList1.SelectedValue.ToString() != "26")
                        {
                            for (int i = 0; i < 4; i++)
                            {
                                char A = 'A';
                                int S = Convert.ToInt32(A) + i;
                                T = Convert.ToChar(S).ToString();
                                string Sql = string.Format("SELECT * FROM QA2012 WHERE {0} LIKE '%{1}%'", "a" + DropDownList1.SelectedValue.ToString(), T.ToString());
                                string Result = string.Format("<set name='{0}' value='{1}'/>", T, cs.ReturnDataSet(Sql).Tables[0].Rows.Count);
                                strXML += Result;
                            }
                            strXML += "</graph>";
                            Charts = FusionCharts.RenderChart("FusionCharts/Pie3D.swf", "", strXML, "My", "700", "433", false, false);
                        }                }            }
                return Charts;
            }这样就能实现想要的动态3D flash效果
      

  32.   

    你可以百度搜索下webChartControl 会找到相应的使用方法
      

  33.   

    不理解flash,不要用FusionCharts
      

  34.   

    要求不是很高的話,請y用http://www.winnovative-software.com/WebChart.aspx