李sir_Blog

博客园 首页 联系 订阅 管理

 这两天在研究怎样在 C# 中使用MSChart组件来绘制柱状、饼状图形,由于以前没有接触过MSChart组件,关于这方面的资料也没有;于是就到网上狂搜一把,找到了一些相关的资料,但资料都写的不完整; 现在将自己摸索的心得整理一下:

1、将MSChart control的引用添加到工具栏。

   选择“工具->选择工具箱项”, 然后切换到“COM 组件”页,选择“Microsoft Chart Control 6.0 (OLEBD)”,点击确定后就可以成功加载控件了。

2、添加引用,using MSChart20Lib;

3、定义图表样式

          

//图表标题        

MSChartBar.TitleText = "年度统计图表";

           

//页底说明          

MSChartBar.Footnote.Text = "说明:年度柱状统计图表";

           

//设置图例          

MSChartBar.ShowLegend = true;
           

MSChartBar.Legend.Location.LocationType = VtChLocationType.VtChLocationTypeRight;

         
           

//设置Plot的Shadow          

MSChartBar.Plot.Backdrop.Shadow.Style = VtShadowStyle.VtShadowStyleDrop;
         
           

//设置Shadow的大小          

MSChartBar.Plot.Backdrop.Shadow.Offset.Set(60, 60);
         
           

//设置Plot的边框          

MSChartBar.Plot.Backdrop.Frame.Style = VtFrameStyle.VtFrameStyleSingleLine;
                  

//关闭选择          

MSChartBar.AllowSelections = false;

4、显示数据           

MSChartBar.RowCount = 12;            

MSChartBar.ColumnLabel = "温度";

                    

// Y轴名称             

MSChartBar.Plot.get_Axis(VtChAxisId.VtChAxisIdY, 0).AxisTitle.Text = "温度";
                       

// X轴名称    

MSChartBar.Plot.get_Axis(VtChAxisId.VtChAxisIdX, 0).AxisTitle.Text = "月份";
             

for(int row = 1; row <= 12; ++row)          

{               

    MSChartBar.Row = (short)row;                 

    MSChartBar.RowLabel = Convert.ToString(row);                 

    MSChartBar.DataGrid.SetData((short)row, 1, 12*row, 0);                            

 }

            


MSChartBar.Refresh();

    基本可以满足一般需求了,需要完善的有-显示百分比数值。

posted on 2011-04-07 14:39  李sir  阅读(7468)  评论(1编辑  收藏  举报