ОриентацияДендрограммы

Темы платформы · DendrogramOrientation

Содержит варианты ориентации связей дендрограммы. Метки будут располагаться противоположно ориентации связей. Например: если для связей задана ориентация Верх, метки будут расположены снизу.

Полное описание, параметры и ограничения

ОриентацияДендрограммы (DendrogramOrientation)

ОриентацияДендрограммы (DendrogramOrientation)

Доступен, начиная с версии 8.0.

Значения
Верх (Top)
Лево (Left)
Низ (Bottom)
Право (Right)

Описание:

Содержит варианты ориентации связей дендрограммы. Метки будут располагаться противоположно ориентации связей. Например: если для связей задана ориентация Верх, метки будут расположены снизу.

Доступность:

Тонкий клиент, веб-клиент, мобильный клиент, сервер, толстый клиент, внешнее соединение.
Данный объект может быть сериализован в/из XDTO. Тип XDTO, соответствующий данному объекту, определяется в пространстве имен {http://v8.1c.ru/8.2/data/chart}. Имя типа XDTO: DendrogramOrientation.

См. также:
Дендрограмма, свойство Ориентация

Использование в версии:

Доступен, начиная с версии 8.0.

Методическая информация

Практические примеры

ОриентацияДендрограммы.Верх: шесть своих точек

Работа с настоящей дендрограммой собственного кластерного отчёта, а не недокументированное создание концов связей.

Где и как запускать

Модуль своей управляемой формы, толстый управляемый клиент; процедуры и функции &НаКлиенте.

Подготовка

  1. Собственная внешняя обработка с управляемой формой, толстый управляемый клиент Windows. Реквизит УчебноеДерево типа Дендрограмма и связанное ПолеДерева вида Поле дендрограммы создайте в конфигураторе.

  2. Создайте команду ПостроитьДерево и её кнопку. Все дополнительные функции поместите отдельно в тот же модуль. Для событий сначала выполните кнопку подготовки, затем дважды щёлкните подпись настоящего элемента дерева.

  3. Источник — только шесть собственных вымышленных точек в памяти. Построитель отчёта анализа данных работает здесь в толстом клиенте, не в тонком или веб-клиенте.

  4. Дерево получается из результата настоящей иерархической кластеризации. Концы связей ПервыйЭлемент / ВторойЭлемент доступны только для чтения: код не пытается присвоить их вручную.

  5. BSL и кластеризация при сборке HTML не выполнялись; данные базы, файлы, сеть и печать не используются.

&НаКлиенте
Процедура ПостроитьДерево(Команда)
    Дерево = ПостроитьУчебноеДерево();
    Дерево.Ориентация = ОриентацияДендрограммы.Верх;
    Дерево.КоличествоЭлементовШкалы = 2;
    Дерево.МинимальнаяШиринаЭлемента = 12;
    УчебноеДерево = Дерево;
    Сообщить("Связи сохранены: " + Строка(Дерево.Связи.Количество()));
КонецПроцедуры
Тот же модуль: шесть собственных точек
&НаКлиенте
Функция УчебныеТочкиДерева()
    Точки = Новый ТаблицаЗначений;
    Точки.Колонки.Добавить("Код", Новый ОписаниеТипов("Строка"));
    Точки.Колонки.Добавить("X", Новый ОписаниеТипов("Число"));
    Точки.Колонки.Добавить("Y", Новый ОписаниеТипов("Число"));
    Для Индекс = 0 По 5 Цикл
        Точка = Точки.Добавить();
        Точка.Код = "Учебная точка " + Строка(Индекс + 1);
        База = ?(Индекс < 3, 0, 10);
        Точка.X = База + ?(Индекс % 3 = 2, 1, 0);
        Точка.Y = База + ?(Индекс % 3 = 1, 1, 0);
    КонецЦикла;
    Возврат Точки;
КонецФункции
Тот же модуль: доступ к реальному параметру анализа
&НаКлиенте
Функция ПараметрУчебногоДерева(Параметры, Русское, Английское)
    Параметр = Параметры.Найти(Русское);
    Если Параметр = Неопределено Тогда
        Параметр = Параметры.Найти(Английское);
    КонецЕсли;
    Если Параметр = Неопределено Тогда
        ВызватьИсключение "Не найден параметр анализа: " + Русское;
    КонецЕсли;
    Возврат Параметр;
КонецФункции
Тот же модуль: выполнить иерархическую кластеризацию и вывести её отчёт
&НаКлиенте
Функция УчебныйОтчетКластеризации()
    Построитель = Новый ПостроительОтчетаАнализаДанных;
    Построитель.ТипАнализа = Тип("АнализДанныхКластеризация");
    Построитель.ИсточникДанных = УчебныеТочкиДерева();
    Колонки = Построитель.НастройкаКолонок;
    Колонки.Найти("Код").ТипКолонки = ТипКолонкиАнализаДанныхКластеризация.Ключ;
    Колонки.Найти("Код").ВидДанных = ВидДанныхАнализа.Дискретные;
    Для Каждого ИмяКолонки Из СтрРазделить("X,Y", ",") Цикл
        Колонка = Колонки.Найти(ИмяКолонки);
        Колонка.ТипКолонки = ТипКолонкиАнализаДанныхКластеризация.Входная;
        Колонка.ВидДанных = ВидДанныхАнализа.Непрерывные;
    КонецЦикла;
    Количество = ПараметрУчебногоДерева(Построитель.Параметры, "КоличествоКластеров", "ClusterCount");
    Количество.Значение = 2;
    Метод = ПараметрУчебногоДерева(Построитель.Параметры, "МетодКластеризации", "ClusterizationMethod");
    Метод.Значение = МетодКластеризации.ДальняяСвязь;
    Построитель.Выполнить();
    Документ = Новый ТабличныйДокумент;
    Построитель.Вывести(Документ);
    Возврат Документ;
КонецФункции
Тот же модуль: получить настоящее дерево из рисунка отчёта
&НаКлиенте
Функция ПостроитьУчебноеДерево()
    Документ = УчебныйОтчетКластеризации();
    Для Каждого Рисунок Из Документ.Рисунки Цикл
        Если Рисунок.ТипРисунка = ТипРисункаТабличногоДокумента.Дендрограмма Тогда
            Дерево = Рисунок.Объект;
            Для Каждого Узел Из Дерево.Элементы Цикл
                Узел.Расшифровка = Узел.Текст;
            КонецЦикла;
            Возврат Дерево;
        КонецЕсли;
    КонецЦикла;
    ВызватьИсключение "В собственном иерархическом отчёте нет дендрограммы";
КонецФункции

Разбор по шагам

  1. Создайте своё поле и разместите отдельные функции в модуле.

  2. Постройте дерево из шести своих точек.

  3. Проверьте указанный режим или назначенное событие на этом же дереве.

Как проверить результат

  1. Настройка применяется к реальному непустому дереву, а не к новой пустой коллекции связей.

  2. Ориентация меняет расположение дерева. ВсеЭлементы показывает все элементы; КоличествоЭлементов использует видимое число 2; МинимальнаяШирина — минимум 12 символов. Для последних двух вариантов при недостатке места используется прокрутка.

Ожидаемый результат

Есть воспроизводимый источник дерева, реальные связи и точный контекст события / настройки.

На что обратить внимание

  1. Построитель не выполнялся при сборке HTML. Наличие примера не означает проверку интерфейса в установленном клиенте.

Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.

Не хотите разбираться сами?

Адаптируем это решение под вашу базу. Оценка бесплатно.

Оставить задачу

1С, 1С:Предприятие — товарные знаки ООО «1С». Сайт не является официальным представительством фирмы «1С» и не аффилирован с ней.