Я использую System.Windows.Forms.DataVisualization.Charting.Chart () для создания PNG-файла диаграммы.У меня есть следующий код:
string t = @"<Chart>
<ChartAreas>
<ChartArea Name=""Default"" _Template_=""All"">
<AxisX Interval=""1""></AxisX>
</ChartArea>
</ChartAreas>
</Chart>";
var chart = new System.Windows.Forms.DataVisualization.Charting.Chart()
{
Size = new Size(x, y),
Titles = { chartName },
};
var series = new Series("Savings");
series.ChartType = SeriesChartType.Line;
series.Points.DataBindXY(preparedGraphCollection.Keys, preparedGraphCollection.Values);
chart.ChartAreas.Add(new ChartArea());
chart.ChartAreas[0].AxisX.Interval = 1;
chart.Series.Add(series);
System.IO.Directory.CreateDirectory(graphTempFilePath);
chart.SaveImage(graphTempFilePath + filename + ".png", ChartImageFormat.Png);
prepareGraphCollection содержит список KayValuePair, где ключи представляют номера недель, а значения - это номера для каждой недели, например,
50 => 310
51 => 335
52 => 340
1 => 350
2 => 375
Myпроблема в том, что даже если я не отправил какую-либо сортировку или около того на графике, диаграмма выходит там, где номера недель отсортированы таким образом, чтобы наименьшее число отображалось первым.Это дает странный вид диаграммы.Даже если ключи и значения не сортируются таким образом, диаграмма создается с такой сортировкой.Чтобы показать это, как показано выше, на графике были получены данные примерно так:
1 => 350
2 => 375
50 => 310
51 => 335
52 => 340
У вас есть предложения?