Ejemplo n.º 1
0
        /// <summary>
        /// 获取Y轴JSON
        /// </summary>
        /// <param name="getYJsonCallback"></param>
        /// <returns></returns>
        public virtual string GetYJson(GetJsonAppHandler getYJsonCallback)
        {
            StringBuilder json = new StringBuilder("[");

            for (int l = 0; l < Y_List.Count; l++)
            {
                json.Append("{\"data\":[");
                List <LineChartPoint> points = Y_List[l].Points.OrderBy(a => a.XValue).ToList();
                int xCount = X_Strings.Count;
                for (int i = 0, j = 0; i < xCount; i++)
                {
                    if (j < points.Count && points[j].XValue == X_Strings[i])
                    {
                        json.Append("{");
                        json.AppendFormat("\"dataLabels\":{{\"enabled\":{0}}}", (i % Step == 0).ToString().ToLower());
                        json.AppendFormat(",\"Des\":\"{0}\"", points[j].Description);
                        json.AppendFormat(",\"NumType\":\"{0}\"", points[j].NumberType);
                        json.AppendFormat("{0}", getYJsonCallback(points[j]));
                        json.AppendFormat(",\"y\":{0}", points[j].YValue);
                        json.Append("}");
                        if (i < xCount - 1)
                        {
                            json.Append(",");
                        }
                        j++;
                    }
                    else
                    {
                        json.Append("null");
                        if (i < xCount - 1)
                        {
                            json.Append(",");
                        }
                    }
                }
                json.AppendFormat("],\"visible\":{0},\"name\":\"{1}\"}}", Y_List[l].Show.ToString().ToLower(),
                                  Y_List[l].Name);
                if (l < Y_List.Count - 1)
                {
                    json.Append(",");
                }
            }
            json.Append("]");
            return(json.ToString());
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 获取X轴JSON
        /// </summary>
        public string GetXJson(GetJsonAppHandler fun)
        {
            StringBuilder jsonBuilder = new StringBuilder("categories:[");

            foreach (string x in X_Strings)
            {
                jsonBuilder.AppendFormat(@"""{0}"",", x);
            }
            string json = jsonBuilder.ToString();

            if (json.EndsWith(","))
            {
                json = json.Substring(0, json.Length - 1) + "]";
            }
            if (X_Strings.Count == 0)
            {
                json = json + "]";
            }
            string labels = string.Format("labels:{{step:{0} {1} }}", Step, fun(null));

            return("{" + json + "," + labels + "}");
        }