ZedGraph 中清除或添加折线图中某条折线

各位好!
  我现在遇到的问题大意为:在一幅折线图中,假如已有3条折线,我如何实现去掉其中特定的一条折线。
之前的方法是:先完全清除再绑定,这样有刷新抖动。
查了网上:
To remove just one PieItem object:

Dim zgc As ZedGraph.ZedGraphControl = Me.ZedGraphControl1

Dim zgPane As ZedGraph.GraphPane = zgc.GraphPane

Dim zgPieItem As ZedGraph.PieItem = zgPane.CurveList("PieItemLabel")
zgPane.CurveList.Remove(zgPieItem)
但这没看懂如何使用!恳请,知道的人指教!谢谢

作者: TGB1989   发布时间: 2011-06-16

C# code
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Drawing;
using ZedGraph;
using ZedGraph.Web;

namespace HINDI.Web.Report
{
    public partial class LineChart : System.Web.UI.Page
    {
        private string zPath = System.Configuration.ConfigurationManager.AppSettings["ZedPath"];
        
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!Page.IsPostBack)
            {
                this.ZedGraphDemo();
            }
        }

        #region ZedGraph生成折线图
        private void ZedGraphDemo()
        {
            //设置图表保存文件夹
            this.zgwLine.RenderedImagePath = zPath;
        }

        /// 
        /// ZedGraph折线图演示
        /// 
        /// 封装的一个GDI+绘图图面
        /// ZedGraph.MasterPane:绘图面板
        private void CreateImage(Graphics g, MasterPane pane)
        {

            ZedGraph.GraphPane myPane = pane[0];

            //主题
            myPane.Title.Text = "指标数据报表";
            //主题字体颜色
            myPane.Title.FontSpec.FontColor = Color.Red;
            //主题字体大小
            myPane.Title.FontSpec.Size = 20;
            //横纵坐标的标题
            string [] subject = new string[]{"月份","数据值"};
            //月份数组
            string [] months = new string[] { "", "", "", "", "", "", "", "", "", "", "十一", "十二" };
            //月份对应值
            double[] datas = new double[] { 1.5,2.1,1.5,1.8,1.7,1.9,5.9,4.3,1.7,1.8,1.1,1.9};
            //数据点集合(包含横纵坐标点)
            PointPairList list = new PointPairList();
            for (int i = 0; i < months.Length; i++)
            {
                //横坐标点
                double x = Convert.ToDouble(i);
                //纵坐标点
                double y = datas[i];
                //添加到集合中
                list.Add(x,y);
            }
            //设置横坐标的标题
            myPane.XAxis.Title.Text = subject[0];
            //设置纵坐标的标题
            myPane.YAxis.Title.Text = subject[1];

            //设置横坐标的类型为文本
            myPane.XAxis.Type = AxisType.Text;
            //设置横坐标的开始的最小值
            myPane.XAxis.Scale.Min = 0;
            //设置横坐标的结束的最大值
            myPane.XAxis.Scale.Max = 13;
            //设置横坐标要显示的文本
            myPane.XAxis.Scale.TextLabels = months;
            //设置横坐标的字体大小
            myPane.XAxis.Scale.FontSpec.Size = 8;
            //设置纵坐标的字体大小
            myPane.YAxis.Scale.FontSpec.Size = 10;
            //设置横坐标的文本为可见的(默认可见)
            //myPane.XAxis.Scale.IsVisible = true;
            //将横纵坐标点添加到面板中,并设置名称,值,颜色,点的形状
            LineItem curve = myPane.AddCurve("实际值", list, Color.Red, SymbolType.Circle);
            //设置各点的连线宽度
            curve.Line.Width = 1.0F;
            //设置点的填充颜色
            curve.Symbol.Fill = new Fill(Color.White);
            //设置点的大小
            curve.Symbol.Size = 5;
            //设置连接线的抗锯齿效果
            curve.Line.IsAntiAlias = true;
            //设置图形的填充颜色(渐变效果,及渐变的角度)
            myPane.Chart.Fill = new Fill(Color.White,Color.SteelBlue,45.0F);
            myPane.AxisChange(g);
            //绘制图片
            myPane.Draw(g);

        }
        #endregion

        protected void zgwLine_RenderGraph(Graphics g, MasterPane pane)
        {
            CreateImage(g, pane);
        }
    }
}

作者: wxr0323   发布时间: 2011-06-16