IncludeZero: Boolean;
IncludeZero: boolean;
Свойство IncludeZero определяет, будут ли в преобразователе исключаться нулевые значения.
Возможные значения:
True. По умолчанию. Нулевые значения будут исключены;
False. По умолчанию для столбиковых показателей. Нулевые значения исключены не будут.
Данное свойство выполняет операцию min(MinValue, 0) при определении минимального значения по данным (IVZDataNormalizeAdapter.MinValue).
Для определения, будут ли данные в преобразователе обрабатываться по модулю, используйте IVZDataCoordinateAdapter.UseSignDivision.
Для выполнения примера в репозитории необходимо наличие экспресс-отчета с идентификатором «EXPRESS», содержащего на карте столбиковые показатели.
Добавьте ссылки на системные сборки: Express, Metabase, Visualizators.
Sub UserProc;
Var
Metabase: IMetabase;
Express: IEaxAnalyzer;
Map: IVZMapChart;
Layer: IVZMapChartLayer;
DataSourceMapping: IVZMultipleDataSourceMapping;
BarVisual: IVZMapChartBarVisual;
DataTransformer: IVZDataCoordinateAdapter;
Begin
// Получим репозиторий
Metabase := MetabaseClass.Active;
// Получим экспресс-отчёт
Express := Metabase.ItemById("EXPRESS").Bind As IEaxAnalyzer;
// Получим карту
Map := Express.MapChart.MapChart;
// Получим слой карты
Layer := Map.RootLayer.SubLayers.Item(0);
// Получим визуальное представление
BarVisual := Layer.Bars.Item(0).BarVisual;
// Получим настройки сопоставления данных
DataSourceMapping := BarVisual.HeightMapping;
DataTransformer := DataSourceMapping.Item(0).DataTransformer As IVZDataCoordinateAdapter;
// Зададим верхнюю границу интервала
DataTransformer.MaxValue := 30;
// Зададим нижнюю границу интервала
DataTransformer.MinValue := 2;
// Обрабатывать значение по модулю
DataTransformer.UseSignDivision := True;
// Исключать нулевые значения
DataTransformer.IncludeZero := True;
// Выведем в окно консоли
Debug.WriteLine("Преобразование данных:");
Debug.WriteLine("Вход: -10, выход: " +
((DataTransformer.GetData(-10)) As Double).ToString);
Debug.WriteLine("Вход: -5, выход: " +
((DataTransformer.GetData(-5)) As Double).ToString);
Debug.WriteLine("Вход: 0, выход: " +
((DataTransformer.GetData(0)) As Double).ToString);
Debug.WriteLine("Вход: 5, выход: " +
((DataTransformer.GetData(5)) As Double).ToString);
End Sub UserProc;
В результате выполнения примера в окно консоли выведутся значения на выходе.
Необходимые требования и результат выполнения примера Fore.NET совпадают с примером Fore.
Imports Prognoz.Platform.Interop.Express;
Imports Prognoz.Platform.Interop.Visualizators;
…
Public Shared Sub Main(Params: StartParams);
Var
Metabase: IMetabase;
Express: IEaxAnalyzer;
Map: IVZMapChart;
Layer: IVZMapChartLayer;
DataSourceMapping: IVZMultipleDataSourceMapping;
BarVisual: IVZMapChartBarVisual;
DataTransformer: IVZDataCoordinateAdapter;
Begin
// Получим репозиторий
Metabase := Params.Metabase;
// Получим экспресс-отчёт
Express := Metabase.ItemById["EXPRESS"].Bind() As IEaxAnalyzer;
// Получим карту
Map := Express.MapChart.MapChart;
// Получим слой карты
Layer := Map.RootLayer.SubLayers.Item[0];
// Получим визуальное представление
BarVisual := Layer.Bars.Item[0].BarVisual;
// Получим настройки сопоставления данных
DataSourceMapping := BarVisual.HeightMapping;
DataTransformer := DataSourceMapping.Item[0].DataTransformer As IVZDataCoordinateAdapter;
// Зададим верхнюю границу интервала
DataTransformer.MaxValue := 30;
// Зададим нижнюю границу интервала
DataTransformer.MinValue := 2;
// Обрабатывать значение по модулю
DataTransformer.UseSignDivision := True;
// Исключать нулевые значения
DataTransformer.IncludeZero := True;
// Выведем в окно консоли
System.Diagnostics.Debug.WriteLine("Преобразование данных:");
System.Diagnostics.Debug.WriteLine("Вход: -10, выход: " +
((DataTransformer.GetData(-10)) As Double).ToString());
System.Diagnostics.Debug.WriteLine("Вход: -5, выход: " +
((DataTransformer.GetData(-5)) As Double).ToString());
System.Diagnostics.Debug.WriteLine("Вход: 0, выход: " +
((DataTransformer.GetData(0)) As Double).ToString());
System.Diagnostics.Debug.WriteLine("Вход: 5, выход: " +
((DataTransformer.GetData(5)) As Double).ToString());
End Sub;
См. также: