Тип: ШкалаДиаграммы. Настройка шкалы значений диаграммы.
Полное описание, параметры и ограничения
ОбластьПостроенияДиаграммы.ШкалаЗначений (ChartPlotArea.ValuesScale)
ОбластьПостроенияДиаграммы (ChartPlotArea)
ШкалаЗначений (ValuesScale)
Доступен, начиная с версии 8.3.10.
Использование:
Только чтение.
Описание:
Тип: ШкалаДиаграммы.
Настройка шкалы значений диаграммы.
Доступность:
Тонкий клиент, веб-клиент, мобильный клиент, сервер, толстый клиент, внешнее соединение, мобильное приложение (клиент), мобильное приложение (сервер), мобильный автономный сервер.
Использование в версии:
Доступен, начиная с версии 8.3.10.
Методическая информация
Практические примеры
Совместить штуки и рубли, не выдавая их за одну единицу измерения
Столбцы количества используют левую ось 0–20, график выручки — дополнительную ось 0–4000. Каждая шкала подписана.
Где и как запускать
Модуль новой управляемой формы учебной внешней обработки. Код содержит готовые процедуры с директивами; вставляйте на уровне модуля, не внутрь другого обработчика. Каждую задачу запускайте в отдельной копии формы.
Подготовка
В учебной базе создайте новую внешнюю обработку УчебнаяДиаграмма с пустой управляемой формой; назначьте форму основной.
Не создавайте реквизит График и поле ДиаграммаТоваров вручную: код создаёт их в ПриСозданииНаСервере.
В свойствах формы → События назначьте ПриСозданииНаСервере одноимённой процедуре. Сохраните EPF и откройте её в учебном тонком клиенте Windows.
Каждый урок использует отдельный модуль/копию формы. Данные вымышлены: план и факт в штуках за три месяца, не данные учёта.
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
НовыеРеквизиты = Новый Массив;
НовыеРеквизиты.Добавить(Новый РеквизитФормы("График", Новый ОписаниеТипов("Диаграмма")));
ЭтаФорма.ИзменитьРеквизиты(НовыеРеквизиты);
Диаграмма = Новый Диаграмма;
Диаграмма.ТипДиаграммы = ТипДиаграммы.Гистограмма;
Количество = Диаграмма.УстановитьСерию("qty");
Количество.Текст = "Количество, шт. (левая ось)";
Количество.ТипГрафическогоПредставления = ТипГрафическогоПредставленияСерииДиаграммы.Гистограмма;
Количество.ТипНакопления = ТипНакопленияСерииДиаграммы.БезНакопления;
Количество.ИспользуемаяОсьЗначений = ИспользуемаяОсьЗначенийДиаграммы.Основная;
Количество.Цвет = Новый Цвет(70, 110, 190);
Количество.ПриоритетЦвета = Истина;
Выручка = Диаграмма.УстановитьСерию("revenue");
Выручка.Текст = "Выручка, руб. (правая ось)";
Выручка.ТипГрафическогоПредставления = ТипГрафическогоПредставленияСерииДиаграммы.График;
Выручка.ИспользуемаяОсьЗначений = ИспользуемаяОсьЗначенийДиаграммы.Дополнительная;
Выручка.Линия = Новый Линия(ТипЛинииДиаграммы.Сплошная, 2);
Выручка.Маркер = ТипМаркераДиаграммы.Круг;
Выручка.Цвет = Новый Цвет(30, 140, 110);
Данные = Новый Массив;
Данные.Добавить(Новый Структура("Месяц,Количество,Выручка", "Январь", 8, 2000));
Данные.Добавить(Новый Структура("Месяц,Количество,Выручка", "Февраль", 11, 2750));
Данные.Добавить(Новый Структура("Месяц,Количество,Выручка", "Март", 16, 4000));
Для Каждого Запись Из Данные Цикл
Точка = Диаграмма.УстановитьТочку(Запись.Месяц);
Точка.Текст = Запись.Месяц;
Диаграмма.УстановитьЗначение(Точка, Количество, Запись.Количество);
Диаграмма.УстановитьЗначение(Точка, Выручка, Запись.Выручка);
КонецЦикла;
ОсновнаяОсь = Диаграмма.ОсьЗначений;
ОсновнаяОсь.СпособОпределенияМинимальногоЗначения = СпособОпределенияОграничивающегоЗначенияДиаграммы.ИспользоватьЗначение;
ОсновнаяОсь.СпособОпределенияМаксимальногоЗначения = СпособОпределенияОграничивающегоЗначенияДиаграммы.ИспользоватьЗначение;
ОсновнаяОсь.МинимальноеЗначение = 0;
ОсновнаяОсь.МаксимальноеЗначение = 20;
ПраваяОсь = Диаграмма.ДополнительнаяОсьЗначений;
ПраваяОсь.СпособОпределенияМинимальногоЗначения = СпособОпределенияОграничивающегоЗначенияДиаграммы.ИспользоватьЗначение;
ПраваяОсь.СпособОпределенияМаксимальногоЗначения = СпособОпределенияОграничивающегоЗначенияДиаграммы.ИспользоватьЗначение;
ПраваяОсь.МинимальноеЗначение = 0;
ПраваяОсь.МаксимальноеЗначение = 4000;
Область = Диаграмма.ОбластьПостроения;
ЛеваяШкала = Область.ШкалаЗначений;
ЛеваяШкала.Отображение = ОтображениеВДиаграмме.Отображать;
ЛеваяШкала.ОтображениеЗаголовка = ОтображениеЗаголовкаШкалыДиаграммы.Отображать;
ЛеваяШкала.СпособЗаполненияТекстаЗаголовка = СпособЗаполненияТекстаЗаголовкаШкалыДиаграммы.ИспользоватьТекст;
ЛеваяШкала.ТекстЗаголовка = "Штуки";
ПраваяШкала = Область.ДополнительнаяШкалаЗначений;
ПраваяШкала.Отображение = ОтображениеВДиаграмме.Отображать;
ПраваяШкала.ОтображениеЗаголовка = ОтображениеЗаголовкаШкалыДиаграммы.Отображать;
ПраваяШкала.СпособЗаполненияТекстаЗаголовка = СпособЗаполненияТекстаЗаголовкаШкалыДиаграммы.ИспользоватьТекст;
ПраваяШкала.ТекстЗаголовка = "Рубли";
Область.ОтображатьТаблицуДанных = Истина;
Сообщить(Диаграмма.ПолучитьЗначение(Диаграмма.Точки.Получить(2), Количество).Значение = 16);
Сообщить(Диаграмма.ПолучитьЗначение(Диаграмма.Точки.Получить(2), Выручка).Значение = 4000);
ЭтаФорма.График = Диаграмма;
Поле = Элементы.Добавить("ДиаграммаТоваров", Тип("ПолеФормы"));
Поле.Вид = ВидПоляФормы.ПолеДиаграммы;
Поле.ПутьКДанным = "График";
Поле.РастягиватьПоГоризонтали = Истина;
Поле.РастягиватьПоВертикали = Истина;
КонецПроцедуры
Разбор по шагам
Создаём три вымышленных месяца. Количество и выручка — отдельные исходные числа, единицы не преобразуются настройкой оси.
Серия количества имеет столбцы без накопления на основной оси. Выручка — график с круглыми маркерами на дополнительной оси.
Фиксируем диапазоны 0–20 штук и 0–4000 рублей, чтобы ни одно значение не обрезалось.
Обе шкалы отображаются и имеют явный заголовок; в названии серии тоже указан смысл оси.
Проверяем мартовские значения 16 и 4000, а таблица данных позволяет читать их напрямую.
Как проверить результат
Два сообщения Истина. На форме мартовский столбец соответствует 16 на левой шкале, маркер выручки — 4000 на правой.
Проверьте подписи обеих осей: отсутствие единиц делает сравнение визуально двусмысленным.
Ожидаемый результат
Две единицы измерения не смешаны в общей числовой шкале и не замаскированы цветом.
На что обратить внимание
Двойная ось может создавать впечатление совпадающих трендов из-за произвольного масштаба. Для анализа часто понятнее две отдельные диаграммы.
ТипГрафическогоПредставления меняет вид серии, а ИспользуемаяОсьЗначений — её шкалу: это разные настройки.
Здесь одинаковая учебная цена 250 руб. за штуку. Не переносите вывод о такой зависимости на реальные данные.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.
Разместить область построения и подписать шкалу целых штук
Относительные координаты области 0–1 не являются количеством товара. Задаём честную числовую ось 0–20 и шаг шкалы 5.
Где и как запускать
Модуль новой управляемой формы учебной внешней обработки. Код содержит готовые процедуры с директивами; вставляйте на уровне модуля, не внутрь другого обработчика. Каждую задачу запускайте в отдельной копии формы.
Подготовка
В учебной базе создайте новую внешнюю обработку УчебнаяДиаграмма с пустой управляемой формой; назначьте форму основной.
Не создавайте реквизит График и поле ДиаграммаТоваров вручную: код создаёт их в ПриСозданииНаСервере.
В свойствах формы → События назначьте ПриСозданииНаСервере одноимённой процедуре. Сохраните EPF и откройте её в учебном тонком клиенте Windows.
Каждый урок использует отдельный модуль/копию формы. Данные вымышлены: план и факт в штуках за три месяца, не данные учёта.
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
НовыеРеквизиты = Новый Массив;
НовыеРеквизиты.Добавить(Новый РеквизитФормы("График", Новый ОписаниеТипов("Диаграмма")));
ЭтаФорма.ИзменитьРеквизиты(НовыеРеквизиты);
Диаграмма = Новый Диаграмма;
Диаграмма.ТипДиаграммы = ТипДиаграммы.Гистограмма;
План = Диаграмма.УстановитьСерию("plan");
План.Текст = "План, шт.";
Факт = Диаграмма.УстановитьСерию("actual");
Факт.Текст = "Факт, шт.";
Месяцы = Новый Массив;
Месяцы.Добавить(Новый Структура("Ключ,Название,План,Факт", "2026-01", "Январь", 10, 8));
Месяцы.Добавить(Новый Структура("Ключ,Название,План,Факт", "2026-02", "Февраль", 12, 11));
Месяцы.Добавить(Новый Структура("Ключ,Название,План,Факт", "2026-03", "Март", 15, 16));
Для Каждого Месяц Из Месяцы Цикл
Точка = Диаграмма.УстановитьТочку(Месяц.Ключ);
Точка.Текст = Месяц.Название;
Диаграмма.УстановитьЗначение(Точка, План, Месяц.План);
Диаграмма.УстановитьЗначение(Точка, Факт, Месяц.Факт);
КонецЦикла;
Ось = Диаграмма.ОсьЗначений;
Ось.СпособОпределенияМинимальногоЗначения = СпособОпределенияОграничивающегоЗначенияДиаграммы.ИспользоватьЗначение;
Ось.СпособОпределенияМаксимальногоЗначения = СпособОпределенияОграничивающегоЗначенияДиаграммы.ИспользоватьЗначение;
Ось.МинимальноеЗначение = 0;
Ось.МаксимальноеЗначение = 20;
Ось.БазовоеЗначение = 0;
Область = Диаграмма.ОбластьПостроения;
Область.Расположение = РасположениеОбластиПостроенияДиаграммы.УказываетсяРасположение;
Область.Лево = 0.15;
Область.Верх = 0.12;
Область.Право = 0.92;
Область.Низ = 0.82;
Область.Рамка = Новый Рамка(ТипРамкиЭлементаУправления.Одинарная);
Область.ЦветРамки = Новый Цвет(210, 215, 225);
Область.ЦветПоверхности = Новый Цвет(245, 247, 250);
Область.ЛинииШкал = Новый Линия(ТипЛинииДиаграммы.Сплошная, 1);
Шкала = Область.ШкалаЗначений;
Шкала.Отображение = ОтображениеВДиаграмме.Отображать;
Шкала.ОтображениеЗаголовка = ОтображениеЗаголовкаШкалыДиаграммы.Отображать;
Шкала.СпособЗаполненияТекстаЗаголовка = СпособЗаполненияТекстаЗаголовкаШкалыДиаграммы.ИспользоватьТекст;
Шкала.ТекстЗаголовка = "Количество, шт.";
Шкала.ШагШкалы = 5;
Шкала.ФорматПодписей = "ЧДЦ=0;ЧН=0";
Шкала.ОтображениеЛинийСетки = ОтображениеЛинийСеткиДиаграммы.Отображать;
Шкала.ЛинияСетки = Новый Линия(ТипЛинииДиаграммы.Точечная, 1);
Шкала.ЛинияШкалы = Новый Линия(ТипЛинииДиаграммы.Сплошная, 1);
Шкала.ЦветЛинииСетки = Новый Цвет(225, 230, 238);
Шкала.ЦветЛинииШкалы = Новый Цвет(80, 90, 110);
Шкала.ЦветПодписей = Новый Цвет(25, 40, 60);
Шкала.ШрифтПодписей = Новый Шрифт("Arial", 10);
Шкала.ОбластьЗаголовка.ЦветТекста = Новый Цвет(25, 40, 60);
Шкала.ОбластьЗаголовка.Шрифт = Новый Шрифт("Arial", 10, Истина);
ШкалаТочек = Область.ШкалаТочек;
ШкалаТочек.ОриентацияПодписей = ОриентацияПодписейДиаграммы.ПроизвольныйУголНаклона;
ШкалаТочек.УголНаклонаПодписей = -25;
ШкалаТочек.МаксимальноеКоличестовРядовПодписей = 1;
Сообщить(Ось.МинимальноеЗначение = 0 И Ось.МаксимальноеЗначение = 20);
Сообщить(Шкала.ШагШкалы = 5);
Сообщить(Область.Лево < Область.Право И Область.Верх < Область.Низ);
ЭтаФорма.График = Диаграмма;
Поле = Элементы.Добавить("ДиаграммаТоваров", Тип("ПолеФормы"));
Поле.Вид = ВидПоляФормы.ПолеДиаграммы;
Поле.ПутьКДанным = "График";
Поле.РастягиватьПоГоризонтали = Истина;
Поле.РастягиватьПоВертикали = Истина;
КонецПроцедуры
Разбор по шагам
ОсьЗначений отвечает за диапазон чисел, ШкалаЗначений — за визуальные подписи и линии. Это два связанных, но разных объекта.
Задаём диапазон 0–20 с нулевой базой: максимум данных 16 помещается без обрезки. Способы определения границ явно используют значения.
УказываетсяРасположение включает координаты области. Лево/Право и Верх/Низ заданы в долях от 0 до 1, не в пикселях.
Шаг 5 даёт отметки 0,5,10,15,20. Точечная бледная сетка помогает считыванию и не конкурирует со столбцами.
Текст заголовка Количество, шт. выбран явно. Месяцы на шкале точек наклонены на −25° и ограничены одним рядом подписей.
Как проверить результат
Три сообщения Истина. На форме различимы шкала количества и подписи месяцев.
Диапазон заканчивается 20, столбец факта 16 не обрезан; рамка области не накладывается на числа.
Уменьшите окно для проверки подписей; при нехватке места пересмотрите координаты или используйте автоматическое расположение.
Ожидаемый результат
Настройка оси, шкалы и области построения объяснена с разными единицами измерения.
На что обратить внимание
Фиксированные относительные координаты требуют визуальной проверки на нужном размере окна и масштабе интерфейса.
ЦветПоверхности влияет на поверхность объёмных представлений, а не заменяет ЦветФона плоской диаграммы.
УголНаклонаПодписей используется при ПроизвольныйУголНаклона; без этого режима присваивание угла не решает читаемость.
Название МаксимальноеКоличестовРядовПодписей содержит необычное написание именно в API платформы: не исправляйте его в коде.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.