// ======================================================================================================



        /// <summary>
        /// 新增指定关键字曲线的一个数据,注意该关键字的曲线必须存在,否则无效
        /// </summary>
        /// <param name="key">新增曲线的关键字</param>
        /// <param name="values"></param>
        /// <param name="isUpdateUI">是否刷新界面</param>
        private void AddCurveData(string key, float[] values, bool isUpdateUI)
        {
            if (values?.Length < 1)
            {
                return;                                                  // 没有传入数据
            }
            if (data_list.ContainsKey(key))
            {
                InsideCurveItem curve = data_list[key];
                if (curve.Data != null)
                {
                    if (value_IsAbscissaStrech)
                    {
                        // 填充玩整个图形的情况
                        BasicFramework.SoftBasic.AddArrayData(ref curve.Data, values, value_StrechDataCountMax);
                    }
                    else
                    {
                        // 指定点的情况,必然存在最大值情况
                        BasicFramework.SoftBasic.AddArrayData(ref curve.Data, values, value_count_max);
                    }

                    if (isUpdateUI)
                    {
                        Invalidate( );
                    }
                }
            }
        }
 /// <summary>
 /// 设置一条曲线是否是可见的,如果该曲线不存在,则无效。
 /// </summary>
 /// <param name="key">关键字</param>
 /// <param name="visible">是否可见</param>
 public void SetCurveVisible(string key, bool visible)
 {
     if (data_list.ContainsKey(key))
     {
         InsideCurveItem curve = data_list[key];
         curve.Visible = visible;
         Invalidate( );
     }
 }
 /// <summary>
 /// 设置多条曲线是否是可见的,如果该曲线不存在,则无效。
 /// </summary>
 /// <param name="keys">关键字</param>
 /// <param name="visible">是否可见</param>
 public void SetCurveVisible(string[] keys, bool visible)
 {
     foreach (var key in keys)
     {
         if (data_list.ContainsKey(key))
         {
             InsideCurveItem curve = data_list[key];
             curve.Visible = visible;
         }
     }
     Invalidate( );
 }