グラフの凡例を表示する位置を変更するには

【ご質問】
Curlで棒グラフを描画すると、デフォルトでは凡例はグラフ描画フィールド外に表示されます。
この凡例を棒グラフの近くやグラフ内に表示したいのですが、可能でしょうか。

【回答】
凡例をグラフ描画フィールド外のどこに表示するかに関しては
・legend-location
・legend-alignment
を使用することで調整できます。

上記を調整しても表示できない場所に表示したい場合、例えばグラフ内に表示したい時などには
・create-legend
を使用することでグラフの凡例グラフィックを取得出来ますので、
create-legendで取得したグラフィックをグラフ内に追加することで実現出来ます。

詳細は以下のサンプルをご参照ください。

{curl 6.0,7.0,8.0 applet}
{curl-file-attributes character-encoding = “shift-jis”}

{import * from CURL.GUI.CHARTS}

{let records:RecordSet =
    {RecordSet
        {RecordFields
            {RecordField
                “Region”,
                domain = String},
            {RecordField “M1”, caption = “January”, domain = int},
            {RecordField “M2”, caption = “February”, domain = int},
            {RecordField “M3”, caption = “March”, domain = int}
        },
        {RecordData Region = “North”, M1 = 100, M2 = 140, M3 = 130 },
        {RecordData Region = “East”, M1 = 110, M2 = 140, M3 = 170},
        {RecordData Region = “South”, M1 = 140, M2 = 100, M3 = 130},
        {RecordData Region = “West”, M1 = 160, M2 = 190, M3 = 140}
    }
}

{let chart:LayeredChart =
    {LayeredChart
        width = 15cm,
        height = 7cm,
        legend-enabled? = false,
        {LineLayer
            records,
            “M1”,
            “M2”,
            “M3”,
            legend-enabled? = true,
            x-axis-data = {ChartDataSeries records, “Region”},
            {on ChartLayoutChanged at ll:LineLayer do
                ||凡例グラフィックの定義
                let legend1:#Graphic = {chart.create-legend}
                {ll.add
                        {HBox
                            color = “black”,
                            width = {ll.chart.get-x-axis-length},
                            valign = “bottom”,
                            {Fill},
                            legend1
                        }
                }
            }
        }
    }   
}

{VBox
    chart
}

詳細は、Curl開発者ガイドの
[グラフ]-[グラフへのシェイプの追加]
の項と、APIリファレンスの
[CURL.GUI.CHARTS]-[Chart]
の項内のプロパティ[legend-location]、[legend-alignment]の項と
メソッド[create-legend]の項をご参照ください。