【问题标题】:How can I draw a Radar Chart using Microsoft Chart Control for .NET Framework 3.5如何使用 Microsoft Chart Control for .NET Framework 3.5 绘制雷达图
【发布时间】:2011-02-18 08:17:25
【问题描述】:

如何使用 Microsoft Chart Control for .NET Framework 3.5 绘制雷达图。我可以使用 MSDN 中的以下代码绘制“柱形”图表。我找不到雷达图的任何示例。

    Series ChampionshipsSeries = chtNBAChampionships2.Series["Championships"];
    //Add data points 
    ChampionshipsSeries.Points.AddXY("Celtics", 17);
    ChampionshipsSeries.Points.AddXY("Lakers", 15);
    ChampionshipsSeries.Points.AddXY("Bulls", 6);
    ChampionshipsSeries.Points.AddXY("Spurs", 4);
    ChampionshipsSeries.Points.AddXY("76ers", 3);
    ChampionshipsSeries.Points.AddXY("Pistons", 3);
    ChampionshipsSeries.Points.AddXY("Warriors", 3);

寻求您的帮助。

【问题讨论】:

    标签: asp.net graph


    【解决方案1】:

    在尝试了以下来源的示例后,我终于管理了自己,

    Samples for Chart Control - .NET Framework 4

    虽然这些示例是针对 .NET Framework 4 的,但我在 .NET Framework 3.5 for Radar Chart 中进行了尝试,并且成功了。

    如果你有兴趣可以看看这个页面,http://nazmulweb.com/site5/demo/chart/

    后来,我从http://code.msdn.microsoft.com/mschart/Release/ProjectReleases.aspx?ReleaseId=1591找到了.NET Freamework 3.5的示例

    作为一个现成的参考,你可以关注这个,

            /*
        --------------------------
        Criteria    Volvo   Toyota
        --------    -----   ------
        Speed       37      23
        Fuel        32      19
        Comfort     38      31
        Safety      39      33
        --------------------------
        */
    
        DataTable dt = new DataTable();
        dt.Columns.Add("Criteria");
        dt.Columns.Add("Volvo");
        dt.Columns.Add("Toyota");
        DataRow dr1 = dt.NewRow();
        dr1.ItemArray = new object[] { "Speed", 37, 23 };
        dt.Rows.Add(dr1);
        DataRow dr2 = dt.NewRow();
        dr2.ItemArray = new object[] { "Fuel", 32, 19 };
        dt.Rows.Add(dr2);
        DataRow dr3 = dt.NewRow();
        dr3.ItemArray = new object[] { "Comfort", 38, 31 };
        dt.Rows.Add(dr3);
        DataRow dr4 = dt.NewRow();
        dr4.ItemArray = new object[] { "Price", 39, 33 };
        dt.Rows.Add(dr4);
    
        Chart aRadarChart = new Chart();
        aRadarChart.Width = Unit.Pixel(500);
        aRadarChart.DataSource = dt;
        // Add title 
        aRadarChart.Titles.Add("TOYOTA VS VOLVO");
        // Add a legend 
        Legend lgnd = new Legend();
        lgnd.Enabled = true;
        aRadarChart.Legends.Add(lgnd);
    
        //Important: add ChartArea, otherwise no graph will be shown
        ChartArea ca = new ChartArea("myChartArea");
        aRadarChart.ChartAreas.Add(ca);
    
        string car = String.Empty;
        for (int i = 1; i < dt.Columns.Count; i++)
        {
            car = dt.Columns[i].ColumnName;
    
            aRadarChart.Series.Add(car);//Name of the series :Volvo and Toyota
            aRadarChart.Series[car].YValueMembers = car;//Either Volvo or Toyota
            aRadarChart.Series[car].XValueMember = dt.Columns[0].ColumnName;//Criteria
            //Define here: what kind of Chart you want
            aRadarChart.Series[car].ChartType = SeriesChartType.Radar;
        }
    
        //binding data
        aRadarChart.DataBind();
        //Add Chart to a PlaceHolder Control
    plhForChart.Controls.Add(aRadarChart);
        //Page.Controls.Add(aRadarChart);
    
        //for saving image
        aRadarChart.SaveImage(Server.MapPath("App_Data/Sample.jpg"));
    

    【讨论】:

      猜你喜欢
      • 2010-11-20
      • 1970-01-01
      • 2012-04-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-11
      • 2021-07-31
      • 1970-01-01
      相关资源
      最近更新 更多