間隙を埋める領域を使用してデータ系列をプロットする
説明
注意事項
例
例 | |
{import * from CURL.GUI.CHARTS} {import * from CHARTS-DOC, location = "../docstring-support/gui/charts-doc.scurl" } {let chart:LayeredChart = {LayeredChart width = 15cm, height = 6cm, {AreaLayer sample-records, "Age", "Points", x-axis-data = {ChartDataSeries sample-records, "Name"}, stroke-thickness = 3pt, shape-factory = {proc {layer:AreaLayer, points:{FastArray-of PointRecordPair}, series-index:int, border-width:any, border-line-style:LineStyle }:Shape let constant stock-shape:Shape = {AreaLayer.default-shape-factory layer, points, series-index, border-width, border-line-style } let constant fill-pattern:FillPattern = {layer.get-fill-pattern-for-data-series series-index} {for point in points do {stock-shape.add {RectangleShape {GRect 3pt, 3pt, 3pt, 3pt}, translation = point.point, rotation = 45deg, color = {darker-fill-pattern fill-pattern}, border-width = 1.5pt, border-color = FillPattern.silver, tooltip = {Tooltip style = TooltipStyle.immediate, {value def fname = layer.y-axis-data[series-index].field.name {format "%s: %s = %g", point.record["Name"], fname, point.record[fname] } } } } } } {return stock-shape} } } } } {AntialiasedFrame chart} |
新規の AreaLayer を作成します。 |
この AreaLayer 内の領域の境界の |
この AreaLayer 内の領域の境界幅。 |
この AreaLayer のプロットを表す |
この AreaLayer 内の各プロット |
スタイリングの目的のための、この |
AreaLayer |
この ChartLayer の内部レイアウトを更新します。 |
新規の AreaLayer を作成します。
例
この AreaLayer のプロットを表す
説明
この AreaLayer 内の各プロット
説明
例
例 | |
{import * from CURL.GUI.CHARTS} {import * from CHARTS-DOC, location = "../docstring-support/gui/charts-doc.scurl" } {let chart:LayeredChart = {LayeredChart width = 15cm, height = 6cm, legend-location = "right", {AreaLayer sample-records, "Age", "Points", x-axis-data = {ChartDataSeries sample-records, "Name"}, shape-factory = {proc {layer:AreaLayer, points:{FastArray-of PointRecordPair}, series-index:int, border-width:any, border-line-style:LineStyle }:Shape let constant shape:Shape = {AreaLayer.default-shape-factory layer, points, series-index, border-width, border-line-style } let constant fill-pattern:FillPattern = {layer.get-fill-pattern-for-data-series series-index} set shape.arrow-body-width = 2px set shape.arrow-head-width = 8px set shape.arrow-head-length = 12px set shape.arrow-head-style = ArrowStyle.solid set shape.arrow-tail-style = ArrowStyle.none set shape.font-size = 8pt {for point key idx in points do {if idx < points.size - 1 then {shape.add {ArrowShape point.point, points[idx + 1].point, color = FillPattern.white, border-width = 1px, {EllipseShape {GRect 5pt, 5pt, 5pt, 5pt}, translation = point.point, color = {lighter-fill-pattern fill-pattern}, {TextShape {format "%.g", point.record["Points"]}, color = FillPattern.black, valign = "center" } } } } } } {return shape} } } } } {AntialiasedFrame chart} |
スタイリングの目的のための、この
説明
オーバーライド
AreaLayer
戻り値
説明
戻り値
説明
説明
説明
例
例: ChartLayer.set-data-series-visibility の使用 | |
{import * from CURL.GUI.CHARTS} {import * from CHARTS-DOC, location = "../docstring-support/gui/charts-doc.scurl" } {let chart:LayeredChart = {LayeredChart width = 12cm, height = 6cm, {LineLayer sample-records, "Age", "Points", "Height", x-axis-data = {ChartDataSeries sample-records, "Name"}, symbols-at-data-points? = true } } } {value chart} {CheckButton label = "Show Age?", value = true, {on ValueFinished at cb:CheckButton do let layer:ChartLayer = chart.layers[0] {layer.set-data-series-visibility 0, cb.value} } } {CheckButton label = "Show Points?", value = true, {on ValueFinished at cb:CheckButton do let layer:ChartLayer = chart.layers[0] {layer.set-data-series-visibility 1, cb.value} } } {CheckButton label = "Show Height?", value = true, {on ValueFinished at cb:CheckButton do let layer:ChartLayer = chart.layers[0] {layer.set-data-series-visibility 2, cb.value} } } |
この ChartLayer の内部レイアウトを更新します。
説明