Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/262.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何对不同系列中的所有列进行排序_C#_Sorting_Charts - Fatal编程技术网

C# 如何对不同系列中的所有列进行排序

C# 如何对不同系列中的所有列进行排序,c#,sorting,charts,C#,Sorting,Charts,我有一些关于人员工作时间的数据。为了显示这些数据,我使用了VisualStudio图表(c语言)。这些数据分为两个图表系列。当我想对所有列进行排序时,它们一直在对序列成员进行排序,但我想对所有列进行排序,以找到前10名成员。你能做什么 private void TakeSeries() { var q1 = (from n1 in db.tblSelectedOperation join n2 in db.Operations

我有一些关于人员工作时间的数据。为了显示这些数据,我使用了VisualStudio图表(c语言)。这些数据分为两个图表系列。当我想对所有列进行排序时,它们一直在对序列成员进行排序,但我想对所有列进行排序,以找到前10名成员。你能做什么

private void TakeSeries()
    {
        var q1 = (from n1 in db.tblSelectedOperation
                  join n2 in db.Operations
                  on n1.OpCode equals n2.OperationCode
                  select new { n2.OperationName }).ToList();
        foreach (var item in q1)
        {
            if (chart1.Series.FindByName(item.OperationName) == null)
            {
                Series ser = new Series(item.OperationName);
                chart1.Series.Add(ser);
                chart1.Series[item.OperationName].IsValueShownAsLabel = true;
                chart1.Series[item.OperationName].LabelBackColor = Color.White;
            }
        }
    }
//--------------------------------------------------------- //-------------------------------------

#region showValueInChart
        //var q1 = db.usp_ForGroupsOfProductionWithScore(Setting.Setting.Date()).ToList();
        chart1.ChartAreas["ChartArea1"].AxisX.Interval = 1;
        foreach (var item in chart1.Series)
        {
            chart1.Series[item.Name.ToString()].Points.Clear();
            var q0 = q1.Where(n => n.OperationName == item.Name.ToString()).ToList();
            if (q0 != null)
            {
                foreach (var item1 in q0)
                {
                    chart1.Series[item1.OperationName].Points.AddXY(item1.personName.ToString(), (int)(item1.Score));
                }
            }
            chart1.AlignDataPointsByAxisLabel();
        }
        chart1.ChartAreas["ChartArea1"].AxisY.LabelStyle.Enabled = true;

        #endregion

我找到了。。我无法按需要对图表列进行排序,因为我已按序列顺序添加了数据。。 从代码中删除这些行后,图表排序正确

#region showValueInChart
        q1 = q1.OrderByDescending(n => n.Score).ToList();
        chart1.ChartAreas["ChartArea1"].AxisX.Interval = 1;
        foreach (var item in chart1.Series)
        {
            chart1.Series[item.Name.ToString()].Points.Clear();
        }
        //var q0 = q1.Where(n => n.OperationName == item.Name.ToString()).OrderByDescending(n => n.Score).ToList();
        //if (q0 != null)
        //{
            //q0 = q0.OrderByDescending(n => n.Score).ToList();
            foreach (var item1 in q1)
            {
                chart1.Series[item1.OperationName].Points.AddXY(item1.personName.ToString(), (int)(item1.Score));
                chart1.AlignDataPointsByAxisLabel();
            }
        //}
        chart1.ChartAreas["ChartArea1"].AxisY.LabelStyle.Enabled = true;
        #endregion

哪个UI框架是Winforms?WPF,Asp.Net?以及您使用的图表库?非常重要:发布你的代码。。有关更多信息,请参阅。@SriramSakthivel:我想这是WPF。。图书馆:数据可视化来吧,你应该知道这一点!它是哪一个:System.Web.UI.DataVisualization.Charting还是System.Windows.Forms.DataVisualization.Charting??-您不需要对列进行排序,您需要对数据进行排序!这是我的图表:这是我想要排序的示例:@TaW:“使用System.Windows.Forms.DataVisualization.Charting;”-我使用了搜索时找到的所有排序函数和方法。但它们都没有对图表列进行排序。我在使用之前对“q1 var”进行了排序,或者对“q0”进行了排序,但在所有这些之后,仍然对series group中的列进行了排序。例如,我使用了:-q1.orderby(n=>n.score)/\\q0.orderby(n=>n.score))-chart1.DataManipulator.Sort(PointSortOrder.Descending,item.Name.ToString());-chart1.Series[0]。排序(PointSortOrder.Descending);但它们的排序和我想要的不一样。。