データドリブン グラフを表す抽象クラス。実装には
説明
| 新しい Chart オブジェクトを作成します。 |
| Chart の下の余白に割り当てられたスペースの量。 |
| データ系列のプロット時に使用される |
| 高さが指定されていない場合に、この Chart が使用する高さ。 |
| 幅が指定されていない場合に、この Chart が使用する幅。 |
| このオブジェクトに関連付けられている |
| テキストのフォント書体を設定します。 |
| オブジェクト内のテキストの既定サイズを指定します。 |
| オブジェクト内のテキストを斜体や斜投影法などのフォントにするかどうかを指定します。 |
| オブジェクト内のテキストを、太字として強調表示するかどうかを指定します。 |
| グラフの現在の高さ。 |
| この Chart でレイアウト操作が保留中であるかどうかを示します。 |
| Chart の左の余白に割り当てられたスペースの量。 |
| Chart の凡例を表す |
| グラフの凡例の位置 ( |
| 凡例を格納するために使用される |
| このグラフ内でプロットに使用されるエリア。 |
| Chart の右の余白に割り当てられたスペースの量。 |
| スタイリングの目的のための、この |
| オブジェクト内のテキストに、取り消し線を適用するかどうかを指定します。 |
| このオブジェクト内のテキストに、下線を引かれるかどうかを指定します。 |
| Chart の上の余白に割り当てられたスペースの量。 |
| グラフの現在の幅。 |
| Chart の凡例の生成に使用されるファクトリー プロシージャの |
| 標準凡例項目を作成します。 |
| 標準垂直方向レイアウトの凡例を作成します。 |
| 境界制約 (ローカル座標系) をこの Shape に適用します。 |
| このグラフの凡例 |
| このオブジェクトの可視表現を描画します。 |
| 保留中のレイアウト処理が直ちに実行されるように強制します。 |
| この Chart の必要余白を概算します。 |
| Chart の下の余白に使用される実際の値を返します。 |
| Chart の左の余白に使用される実際の値を返します。 |
| Chart の右の余白に使用される実際の値を返します。 |
| Chart の上の余白に使用される実際の値を返します。 |
| この Chart の凡例に必要なすべての項目を作成します。 |
| ローカル座標系におけるこの Shape の四角形のレンダリング境界を計算します。 |
| このオブジェクトのローカル座標系における、このオブジェクトとその子の四角形のレイアウト境界を計算します。 |
| Chart がすぐにレイアウト操作を実行するように要求します。 |
| このチャートにおけるレイアウトの現在のプロセスを実行します。 |
| この Chart に |
| 凡例を Chart 内に位置付けます。 |
| 描画する |
| ポイントがこの Shape 内にあるかどうかを判定します。 |
| ポリゴンがこの Shape と交差するかどうかを判定します。 |
| Chart のサイズを設定します。 |
| このオブジェクトに値する |
新しい Chart オブジェクトを作成します。
説明
Chart の下の余白に割り当てられたスペースの量。
説明
例
データ系列のプロット時に使用される
説明
注意事項
例
| 例 | |
![]() | |
{import * from CURL.GUI.CHARTS}
{import * from CHARTS-DOC,
location = "../docstring-support/gui/charts-doc.scurl"
}
{define-proc package {h-gradient
start-color:FillPattern,
highlight-color:FillPattern,
end-color:FillPattern,
highlight-pos:double = 0.2
}:FillPattern
{return
{LinearGradientFillPattern
{Fraction2d 0, 0},
{Fraction2d 1, 0},
{Spectrum.from-envelope
start-color,
0.0,
highlight-color,
highlight-pos,
end-color,
1.0
}
}
}
}
{LayeredChart
width = 15cm,
height = 6cm,
color-palette =
{new {Array-of FillPattern},
{h-gradient "gray", "white", "gray"},
{h-gradient "blue", "lavender", "steelblue"},
{h-gradient "red", "mistyrose", "crimson"},
{h-gradient "purple", "lavender", "blueviolet"},
{h-gradient "lime", "mintcream", "green"}
},
{BarLayer
sample-records,
"Wins",
"Points",
"Age"
}
}
|
| 例 | |
![]() | |
{import * from CURL.GUI.CHARTS}
{import * from CHARTS-DOC,
location = "../docstring-support/gui/charts-doc.scurl"
}
{RecordGrid height = 6cm, record-source = sample-records}
{let chart:LayeredChart =
{LayeredChart
width = 15cm,
height = 6cm,
left-axis = {new {NumericAxis-of double}, 0, 70},
right-axis = {ChartAxis {ChartDataSeries sample-records, "Height"}},
{BarLayer
{ChartDataSeries sample-records, "Age"},
{ChartDataSeries sample-records, "Wins"},
{ChartDataSeries sample-records, "Height"},
x-axis-data = {ChartDataSeries sample-records, "Name"}
}
}
}
{value chart}
First element of color-palette:
{DropdownList
"black", "blue", "turquoise", "purple", "crimson",
list-item-creation-proc =
{proc {val:any}:ListItem
{return
{ListValueItem
value=val,
{RectangleGraphic fill-color=val,
width=50pt, height=10pt
}
}
}
},
{on ValueChanged at ddl:DropdownList do
set chart.color-palette[0] = ddl.value asa FillPattern
{chart.note-color-palette-changed}
}
}
|
高さが指定されていない場合に、この Chart が使用する高さ。
説明
幅が指定されていない場合に、この Chart が使用する幅。
説明
このオブジェクトに関連付けられている
プログラミング注意事項
テキストのフォント書体を設定します。
説明
| 例 | |
![]() | |
{VBox
{text font-family = "serif", serif},
{text font-family = "sans-serif", sans-serif},
{text font-family = "monospace", monospace},
{text
font-family = "Arial, Nimbus Sans L, sans-serif",
prefer a particular sans-serif
},
{text
font-family =
"Times New Roman, Nimbus Roman No9 L, serif",
prefer a particular serif
}
}
|
オブジェクト内のテキストの既定サイズを指定します。
説明
例
| 例 | |
![]() | |
{text font-size=12pt,
{text font-size=8pt, Little}
{text font-size=1cm, Pretty big}
{text Medium}
{text font-size=1in, Huge!}
}
{text And this is the default}
|
参照:
オブジェクト内のテキストを斜体や斜投影法などのフォントにするかどうかを指定します。
説明
例
| 例 | |
{paragraph font-style="italic", Everything in this paragraph
should be in an italic font,
{text font-style="normal", except for this text fragment.}
}
|
参照:
オブジェクト内のテキストを、太字として強調表示するかどうかを指定します。
説明
例
| 例 | |
{paragraph Everything in this paragraph
should be normally weighted,
{text font-weight="bold", except for this text fragment.}
}
|
参照:
グラフの現在の高さ。
説明
この Chart でレイアウト操作が保留中であるかどうかを示します。
説明
Chart の左の余白に割り当てられたスペースの量。
説明
例
| 例 | |
![]() | |
{import * from CURL.GUI.CHARTS}
{import * from CHARTS-DOC,
location = "../docstring-support/gui/charts-doc.scurl"
}
{RecordGrid height = 6cm, record-source = sample-records}
{let chart:LayeredChart =
{LayeredChart
width = 15cm,
height = 6cm,
left-axis = {new {NumericAxis-of double}, 0, 70},
right-axis = {ChartAxis {ChartDataSeries sample-records, "Height"}},
{LineLayer
{ChartDataSeries sample-records, "Age"},
{ChartDataSeries sample-records, "Wins"},
{ChartDataSeries sample-records, "Height"},
x-axis-data = {ChartDataSeries sample-records, "Name"}
}
}
}
{let left:TextField =
{TextField
value = "null",
{on ValueFinished at tf:TextField do
let val:String = tf.value
set chart.left-margin = {evaluate val}
}
}
}
{let right:TextField =
{TextField
value = "null",
{on ValueFinished at tf:TextField do
let val:String = tf.value
set chart.right-margin = {evaluate val}
}
}
}
{let top:TextField =
{TextField
value = "null",
{on ValueFinished at tf:TextField do
let val:String = tf.value
set chart.top-margin = {evaluate val}
}
}
}
{let bottom:TextField =
{TextField
value = "null",
{on ValueFinished at tf:TextField do
let val:String = tf.value
set chart.bottom-margin = {evaluate val}
}
}
}
{Canvas
width = chart.width,
height = chart.height,
chart
}
{Fill width = 1cm}
{VBox
spacing = .25cm,
"Margins:",
{Table
cell-border-width = 1pt,
cell-border-color = "silver",
cell-border-style = "sunken",
border-width = 1pt,
border-color="silver",
border-style = "sunken",
{column-prototype
{bold side},
"left",
"right",
"top",
"bottom"
},
{column-prototype
width = 3cm,
{bold value},
left,
right,
top,
bottom
}
}
}
|
説明
例
| 例 | |
![]() | |
{import * from CURL.GUI.CHARTS}
{import * from CHARTS-DOC,
location = "../docstring-support/gui/charts-doc.scurl"
}
{RecordGrid height = 6cm, record-source = sample-records}
{let chart:LayeredChart =
{LayeredChart
width = 15cm,
height = 6cm,
left-axis = {new {NumericAxis-of double}, 0, 70},
right-axis = {ChartAxis {ChartDataSeries sample-records, "Height"}},
{LineLayer
{ChartDataSeries sample-records, "Age"},
{ChartDataSeries sample-records, "Wins"},
{ChartDataSeries sample-records, "Height"},
x-axis-data = {ChartDataSeries sample-records, "Name"}
}
}
}
{Canvas
width = chart.width,
height = chart.height,
chart
}
Legend location:
{DropdownList
LegendLocation.left,
LegendLocation.right,
LegendLocation.top,
LegendLocation.bottom,
list-item-creation-proc =
{proc {val:any}:ListItem
{return
{ListValueItem
value = val,
(val asa LegendLocation).name
}
}
},
{on ValueChanged at ddl:DropdownList do
set chart.legend-location = ddl.value asa LegendLocation
},
value = LegendLocation.right
}
Legend alignment:
{TextField
value = {format "%.2f", chart.legend-alignment},
{on ValueFinished at tf:TextField do
set chart.legend-alignment = {tf.value.to-double}
}
}
|
Chart の凡例を表す
説明
例
| 例 |
![]() |
{import * from CURL.GUI.CHARTS}
{import * from CHARTS-DOC,
location = "../docstring-support/gui/charts-doc.scurl"
}
{RecordGrid height = 6cm, record-source = sample-records}
{let chart:LayeredChart =
{LayeredChart
width = 15cm,
height = 6cm,
left-axis = {new {NumericAxis-of double}, 0, 70},
right-axis = {ChartAxis {ChartDataSeries sample-records, "Height"}},
legend-location = LegendLocation.top,
legend-alignment = 0.5,
legend-entry-factory =
{proc
{chart:Chart,
data-series:ChartDataSeries,
record:#Record,
color:FillPattern,
legend-index:int
}:Graphic
{return
{Frame
color = color,
{if-non-null record then
{data-series.field.domain.format
record[data-series.field.name]
}
else
data-series.field.caption
}
}
}
},
legend-factory =
{proc {chart:Chart, include-scrollbox?:bool}:#Graphic
let constant entries:{Array-of Graphic} =
{chart.get-legend-entries}
{if entries.empty? then
{return null}
}
let box:Box =
{HBox
margin = 4pt,
spacing = 8pt
}
{for g in entries do {box.add g}}
{return
{if include-scrollbox? then
{ScrollBox
border-width = 1px,
border-color = FillPattern.black,
box
}
else
set box.border-width = 1px
set box.border-color = FillPattern.black
{return box}
}
}
},
{LineLayer
{ChartDataSeries sample-records, "Age"},
{ChartDataSeries sample-records, "Wins"},
{ChartDataSeries sample-records, "Height"},
|