private string _GetResultForA2() { var result = "<h2>Подробная характеристика кластеров</h2>"; result += "<p><em>Собранность кластера означает, что значения объектов не выходят за пределы удвоенного среднеквадратического отклонения.</em></p>"; var clastResult = _result.GetResult(); var scale = FuzzyScaleRepository.ForA2(); result += "<ul>"; var clasters = clastResult.Select(i => i.Value.Claster).Distinct().ToList(); foreach (var claster in clasters) { var clastName = ClasterHelper.GetFullName(claster); var clastNum = clastResult.Count(i => i.Value.Claster == claster); var clastValue = clastResult.Where(i => i.Value.Claster == claster).Select(i => (double)i.Value.Points).ToList().StdDev(); var scaleValue = scale.GetAccessory((decimal)clastValue); var clastValueResult = (scaleValue.Name == "P21") ? "собранный" : "разрозненный"; result += $"<li><strong>Кластер {clastName}</strong>. Элементов: {clastNum}, {clastValueResult} (степень истинности {scaleValue.Value:0.00}).</li>"; } result += "</ul>"; return(result); }
private void graphA2Panel_Paint(object sender, PaintEventArgs e) { var scale = FuzzyScaleRepository.ForA2(); DrawGraph(scale, e.Graphics); }