2016-05-13 69 views
2

我想訂購我的Oxyplot圖表legendalphabetical order。這可能在Oxyplot之內嗎?可以按字母順序排列Oxyplot圖例中的系列?

這裏是我當前的情節:Plot with legend

我想訂購我chartlegend。我不會按照我繪製數據的方式排序,因爲這意味着太多的條件,我想盡可能保持一般的繪圖。我知道這將是一種選擇,但我寧願不採用這種方法。

請讓我知道是否有可能order alphabetically只有Oxyplot的圖例項?

回答

2

您不能直接修改去傳說中的順序,但你可以在一系列排序的模型裏面,所以你會看到傳說按字母順序排序

有你有2種方法來進行排序:

選項1,簡單冒泡排序:

Series temp; 
int length = plotModel.Series.Count; 
for (i = 0; i < length; i++) 
{ 
    for (int j = i + 1; j < length; j++) 
    { 
     if (string.Compare(plotModel.Series[i].Title, plotModel.Series[j].Title) > 0) //true if second string goes before first string in alphabetical order 
     { 
      temp = plotModel.Series[i]; 
      plotModel.Series[i] = plotModel.Series[j]; 
      plotModel.Series[j] = temp; 
     } 
    } 
} 

選項2,輔助列表:

List<Series> sortedList = new List<Series>(plotModel.Series); 
sortedList.Sort((x, y) => string.Compare(x.Title, y.Title)); 

plotModel.Series.Clear(); 
foreach(Series s in sortedList) 
    plotModel.Series.Add(s);