IChartLabel.DataFormat

Синтаксис Fore

DataFormat: String;

Синтаксис ForeNet

DataFormat: String;

Описание

Свойство DataFormat определяет формат отображения текста в подписи данных.

Комментарии

Для формирования значения можно использовать переменные, текст или подстановки, представленные в таблице.

Значение Описание
%Autovalue Автоматический формат значения (установлен по умолчанию).
%Value Значение точки.
%YValue Значение точки по оси Y.
%XValue Значение точки по оси X.
%Part Значение с накоплением.
%Percent Доли в процентах - это отношение значения точки ряда к сумме значений этой же точки всех рядов, представленное с процентах.
%PercentPart Доли в процентах с накоплением.
%PercentHundredth Доли - это отношение значения точки ряда к сумме значений этой же точки всех рядов.
%PercentPartHundredth Доли с накоплением.
%Data Пользовательский формат данных.
%SerieName Имя ряда.
%SerieNo Номер ряда.
%PointName Имя точки.
%PointNo Номер точки.

Пример Fore

Для выполнения примера добавьте ссылки на системные сборки «Chart», «Metabase», «ExtCtrls», «Forms», «Report» и «Tab». На форму добавьте компоненты UiChart с идентификатором UiChart1, ChartBox и Button с идентификатором Button1. Для ChartBox проставьте источником UiChart. Для UiChart1 проставьте PointCount - 3, SerieCount - 1.

    Sub Button1OnClick(Sender: Object; Args: IMouseEventArgs);
    Var 
        i,j: Integer;
        chart: IChart;
        Label: IChartLabel;
        text: string;
    Begin
        chart := UiChart1.Chart;
        text := " More: ";
        chart.Series.DisplayLabels := True;
        chart.UseSignatureHint := True;
        For j := 0 To chart.Series.Count - 1 Do
            For i := 0 To chart.PointsCount - 1 Do
                Label := chart.Series.Item(j).SeriePoint(i).Label;
                Label.DataFormat := "%Value" + text + "Serie: " + (j + 1).ToString+" Point: " + (i + 1).ToString;
                chart.HintStringFormat := "%Value" + text + "Serie: " + (j + 1).ToString+" Point: " + (i + 1).ToString;
            End For;
        End For
    End Sub Button1OnClick;;

    Sub UiChart1OnGetDataValue(Sender: Object; Args: IUiChartGetDataValueEventArgs);
    Begin
        Args.Result := True;
        Args.Value := Math.RandBetween(10,40);
    End Sub UiChart1OnGetDataValue;

После выполнения примера на подписях данных всех рядов будет отображено значение ряда в точке, далее текст « More: », текст «Serie: », индекс ряда, текст « Point: » и индекс точки. То же будет отображаться во всплывающих подсказках.

Таким образом в подписи данных можно дописывать свои значения, причем для каждого ряда и определенной точке ряда значение может отличаться.

Пример Fore.NET

Для выполнения примера добавьте ссылки на системные сборки «Chart», «ExtCtrls», «Forms», «MathFin», «Metabase», «Report», «Tab. На форму добавьте компоненты UiChartNet с идентификатором uiChartNet1, ChartBoxNet и Button с идентификатором Button1. Для ChartBoxNet проставьте источником uiChartNet1.

    Private Sub uiChartNet1_OnGetDataValue(Sender: System.Object; Args: Prognoz.Platform.Interop.Chart.UiChartGetDataValueEventArgs);
    Var Math: Prognoz.Platform.Interop.MathFin.Math = New MathClass();
    Begin
        Args.Result := True;
        Args.Value := Math.RandBetween(10,60);  
    End Sub;

    Private Sub button1_Click(sender: System.Object; e: System.EventArgs);
    Var 
        i,j: Integer;
        chart: IUiChart;
        Label: IChartLabel;
        text: string;
    Begin
        chart := UiChartNet1.ChartUi;   
        text := " More: ";
        chart.Chart.Series.DisplayLabels := True;
        chart.Chart.UseSignatureHint  := True;
        For j := 0 To chart.Chart.Series.Count - 1 Do
            For i := 0 To chart.PointCount - 1 Do
                Label := chart.Chart.Series.Item[j].SeriePoint[i].Label;
                Label.DataFormat := "%Value" + text + "Serie: " + (j + 1).ToString()+" Point: " + (i + 1).ToString();
                chart.Chart.HintStringFormat := "%Value" + text + "Serie: " + (j + 1).ToString()+" Point: " + (i + 1).ToString();
            End For;
        End For
    End Sub;

    Private Sub OBJ516Form_Shown(sender: System.Object; e: System.EventArgs);
    Begin
        uiChartNet1.PointCount := 3;
        uiChartNet1.SerieCount := 1;  
    End Sub;

После выполнения примера на подписях данных всех рядов будет отображено значение ряда в точке далее текст « More: », текст «Serie: », индекс ряда, текст « Point: » и индекс точки. То же будет отображаться во всплывающих подсказках.

Таким образом в подписи данных можно дописывать свои значения, причем для каждого ряда и определенной точке ряда значение может отличаться.

См. также:

IChartLabel