C#:ZedGraph画图控件(待补充)

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using ZedGraph;


namespace TestZedGraphControl
{
    /// <summary>
    /// 画图控件操作类(VS显示控件:工具-->添加项-->选择项-->ZedGraph.dll)
    /// </summary>
    public class CtlZedGraphOperate
    {
        private ZedGraphControl m_zedGraphControl = null;

        /// <summary>
        /// 关联ZedGraph画图控件
        /// </summary>
        public ZedGraphControl refZedGraphControl
        {
            set
            {
                m_zedGraphControl = value;
            }
            get
            {
                return m_zedGraphControl;
            }
        }

        /// <summary>
        /// 构造函数
        /// </summary>
        public CtlZedGraphOperate()
        {

        }

        private static volatile CtlZedGraphOperate zgOpera = null;
        
        /// <summary>
        /// 获取画图控件操作类单一实例
        /// </summary>
        /// <returns></returns>
        public static CtlZedGraphOperate GetInstance()
        {
            if(null == zgOpera)
            {
                zgOpera = new CtlZedGraphOperate();
            }
            return zgOpera;
        }

        /// <summary>
        /// 设置标题
        /// </summary>
        /// <param name="title">图标题</param>
        /// <param name="x_title">X轴标题</param>
        /// <param name="y_title">Y轴标题</param>
        /// <param name="x_type">X轴类型</param>
        /// <param name="y_type">Y轴类型</param>
        public void SetTitles(string title, string x_title, string y_title)
        {
            m_zedGraphControl.GraphPane.Title.Text = title;
            m_zedGraphControl.GraphPane.XAxis.Title.Text = x_title;
            m_zedGraphControl.GraphPane.YAxis.Title.Text = y_title;
        }

        /// <summary>
        /// 设置标题(Linear:线性,Exponent:指数,Log:对数,Date:时间,Text:文本,Ordinal:序数,LinearOrdinal:线性序数,DateOrdinal:时间序数)
        /// </summary>
        /// <param name="title">图标题</param>
        /// <param name="x_title">X轴标题</param>
        /// <param name="y_title">Y轴标题</param>
        /// <param name="x_type">X轴类型</param>
        /// <param name="y_type">Y轴类型</param>
        public void SetTitles(string title, string x_title, string y_title, AxisType x_type, AxisType y_type)
        {
            m_zedGraphControl.GraphPane.Title.Text = title;
            m_zedGraphControl.GraphPane.XAxis.Title.Text = x_title;
            m_zedGraphControl.GraphPane.YAxis.Title.Text = y_title;
            m_zedGraphControl.GraphPane.XAxis.Type = x_type;
            m_zedGraphControl.GraphPane.YAxis.Type = y_type;
        }

        /// <summary>
        /// 依据点集画线
        /// </summary>
        /// <param name="pointList">点集</param>
        public LineItem DrawLines(string label, PointPairList pointList, System.Drawing.Color color, SymbolType symbolType)
        {
            return m_zedGraphControl.GraphPane.AddCurve(label, pointList, color, symbolType);
        }

        /// <summary>
        /// 刷新
        /// </summary>
        public void ReFresh()
        {
            m_zedGraphControl.AxisChange();
            m_zedGraphControl.Refresh();
        }
    }
}

 

posted @ 2014-05-07 13:47  慧由心生  阅读(5184)  评论(0)    收藏  举报