Координатные оси диаграммы – класс TChartAxis
Все координатные оси диаграммы создаются на основе описанного в модуле TeEngine класса TChartAxis. Диаграмма умеет поддерживать до пяти осей одновременно, для чего в TChart объявлены соответствующие свойства:
propertyBottomAxis : TChartAxis; //нижняя горизонтальная ось
propertyTopAxis : TChartAxis; //верхняя горизонтальная ось
propertyLeftAxis : TChartAxis; //левая вертикальная ось
propertyRightAxis : TChartAxis; //правая вертикальная ось
propertyDepthAxis : TChartAxis; //ось Z для трехмерных графиков
Каждая ось идентифицирует свое место в диаграмме посредством двух
свойств:
propertyHorizontal : Boolean; //только для чтения
propertyOtherSide : Boolean; //только для чтения
Соответствие между значениями, возвращаемыми данными свойствами, и местом оси в диаграмме приведено в табл. 18.2.
Таблица 18.2. Идентификация оси в диаграмме
Координатная ось | Свойства оси | |
Horizontal | OtherSide | |
LeftAxis | False | False |
TopAxis | True | True |
RightAxis | False | True |
BottomAxis | True | False |
Видимость координатных осей определяется свойством диаграммы:
propertyAxisVisible : Boolean;
По умолчанию оси диаграммы самостоятельно определяют, какие значения присвоить точкам начала и конца отсчета. Для этого ось анализирует хранящиеся в точках графика данные и выявляет самое большое и самое малое значения. При желании можно отказаться от автоматической настройки точек отсчета оси, переведя в состояние false свойство:
propertyAutomatic : Boolean; //по умолчанию true
Далее программист самостоятельно назначает начало и конец отсчета соответственно:
propertyMinimum : Double;
propertyMaximum : Double;
В этом случае код, назначающий размерность для левой вертикальной оси от 0 до 100, будет выглядеть примерно так:
WithChart1.LeftAxis do
Begin
Automatic:= False ;
Minimum := 0;
Maximum := 100;
end;
Эквивалентную задачу можно решить с помощью метода:
procedureSetMinMax(constAMin, AMax : Double);
Процедура сама переведет свойство Automatic в состояние false и передаст в свойства Minimum и Maximum значения аргументов AMin и AMax.
Chart1.LeftAxis.SetMinMax( 0, 100 );
Самое большое и самое малое значения точек связанного с осью координат графика проще всего выяснить, обратившись к методу:
procedureCalcMinMax (varAMin, AMax : Double);
Названные значения будут возвращены в формальные параметры AMin и AMax. Иногда обязанности по определению точек отсчета целесообразно распределить между осью диаграммы и программистом. Допустим, мы планируем всегда начинать отсчет с нулевой отметки, а максимальное значение доверяем выбрать диаграмме. Для этого у оси предусмотрены два свойства:
propertyAutomaticMaximum : Boolean;
propertyAutomaticMinimum : Boolean;
определяющие, какая из точек настраивается автоматически. Например:
Дата добавления: 2016-03-15; просмотров: 720;