#### 图形函数

##### 内容

- 作图函数
- 图形类型函数
- 图形字段函数
- 图形标示函数
- 图形填充设置函数
- 颜色函数
- 颜色变换函数

##### 作图函数

###### 内容

- Graph
- GraphGroup
- MergeGraph
- EncodeGraphGroup
- DecodeGraphGroup
- DecodeGraph
- EncodeGraph
- FastLine_Web
- BarLine_Web
- PieLine_Web
- GetColorByIndex

###### Graph

用途：作图函数相关函数。
参数：arg1，arg2，arg3（按示例顺序传入）。
返回：处理后的结果值。

范例

范例一：

```tsl
// K线图
setsysparam(pn_stock(), 'SZ000002');
setsysparam(pn_date(), inttodate(20140117));
setsysparam(pn_nday(), 250);
t1 := NDay2(gfopen(), Open() ,
gfclose(), close(),
gfhigh(), high(),
gflow(), low(),
gftime(), datetimetostr(sp_time()),
// KLine颜色
gfColor(), IfThen3(Close(), Open(),
ClRed() ,//涨颜色
clYellow() ,//平颜色
ClLime()//跌颜色
),
gffill(), ifThen3(Close(), Open(), flClear(), flSolid(), flSolid())
);
t2 := NDay2('MA10', Ma(Close(), 10));
g1 := Graph(gtKline(), 'KLine', t1);
g2 := Graph(gtline(), 'MA10', t2);
return graphgroup(g1, g2);
```

范例二：

```tsl
// 折线图
setsysparam(pn_stock(), 'SZ000002');
setsysparam(pn_date(), inttodate(20140117));
setsysparam(pn_nday(), 250);
GData1 := Nday2(gfclose(), close());
GData2 := Nday2('MA5', MA(close(), 5));
GData3 := Nday2('MA20', MA(close(), 20));
g1 := Graph( gtLine(), gfclose(), Gdata1, gfColor() , clBlue());
g2 := Graph( gtLine(), "MA5", Gdata2, gfColor() , clGreen());
g3 := Graph( gtLine(), "MA20", Gdata3, gfColor() , clRed());
return graphgroup(g1, g2, g3);
```

参考GraphGroup DecodeGraphGroup EncodeGraphGroup DecodeGraph EncodeGraph

###### GraphGroup

用途：作图函数相关函数。
参数：arg1，arg2，arg3，arg4（按示例顺序传入）。
返回：处理后的结果值。

范例

```tsl
VolData := Nday2(GfVol() , Vol() , gfColor() , ifthen ( Close() > Open() , ClRed() , ClGreen() ) );
MAVOL := Nday2('MA5', MA ( Vol() , 5 ) );
VOLGraph := Graph(gtBar(), 'VOLGraph', VolData);
MAVOLGraph := Graph(gtLine(), 'MA5Graph', MAVOL, gfColor(), clBlue());
return GraphGroup(VOLGraph, MAVOLGraph, gfMinValue(), 0);
```

结果说明：GraphGroup包含了两个TGraph图形，一个是VOLGraph成交量图形，另一个是MAVOLGraph成交量的5日均线的折线图形。这两个图形具有的共有属性是gfMinValue()，就是最小值为0。gfColor在VolData中作为了数据字段，用来指示每一个数据点的颜色。因此柱子会根据开盘和收盘的差异来决定色彩的显示。而在MAVOLGraph又作为了图形的属性，因此MAVOLGraph在显示的时候会呈现出蓝色。gfMinValue在返回的图形组合里作为了图形组合的属性，因此决定了图形会用0来作为最小的值来显示，而不会用区间内的最小成交量作为最小值显示。

另外，我们可以注意到，作为gtLine类型的MAVOLGraph并不含有特殊的值来指定折线的点的位置，在没有特定的数据字段的时候，系统会使用第一个存在的数据字段当成默认的gfValue来显示。

gfMinValue()：设定最小值。一般的，图形会用查找视图内最小最小值用于显示，同时，为了特殊显示，也可以指定其显示的最大最小值，通常成交量的图是用0作为最小值的。参考Graph
DecodeGraphGroup EncodeGraphGroup DecodeGraph EncodeGraph

###### MergeGraph

用途：作图函数相关函数。
参数：arg1，arg2，arg3，arg4（按示例顺序传入）。
返回：处理后的结果值。

范例

```tsl
setsysparam(pn_stock(), 'SZ000063');
setsysparam(pn_date(), 20190301T);
setsysparam(pn_nday(), 100);
t1 := NDay2(gfopen(), Open() ,
gfclose(), close(),
gfhigh(), high(),
gflow(), low(),
gftime(), datetimetostr(sp_time()),
// KLine颜色
gfColor(), IfThen3(Close(), Open(),
ClRed() ,//涨颜色
clYellow() ,//平颜色
ClLime()//跌颜色
),
gffill(), ifThen3(Close(), Open(), flClear(), flSolid(), flSolid())
);
t2 := NDay2('MA5', Ma(Close(), 5)); // 5日均线
t3 := NDay2('MA10', Ma(Close(), 10)); // 10日均线
t4 := NDay2('MA20', Ma(Close(), 20)); // 20日均线
g1 := graph(gtKline(), 'KLine', t1);
g2 := graph(gtline(), 'MA5', t2);
g3 := graph(gtline(), 'MA10', t3);
g4 := graph(gtline(), 'MA20', t4);
return MergeGraph(g1, g2, g3, g4);
```

返回:

###### EncodeGraphGroup

用途：作图函数相关函数。
参数：arg1，arg2（按示例顺序传入）。
返回：处理后的结果值。

范例

```tsl
// 取万科A 截止至2014年1月17日的250个交易日的K线数据与10日移动平均数据的图形组合
setsysparam(pn_stock(), 'SZ000002');
setsysparam(pn_date(), inttodate(20140117));
setsysparam(pn_nday(), 250);
t1 := NDay2(gfopen(), Open() ,
gfclose(), close(),
gfhigh(), high(),
gflow(), low(),
gftime(), datetimetostr(sp_time()),
// KLine颜色
gfColor(), IfThen3(Close(), Open(),
ClRed() ,//涨颜色
clYellow() ,//平颜色
Clblue()//跌颜色
),
gffill(), ifThen3(Close(), Open(), flClear(), flSolid(), flSolid())
);
t2 := NDay2('MA10', Ma(Close(), 10));
g1 := graph(gtKline(), 'KLine', t1);
g2 := graph(gtline(), 'MA10', t2);
return EncodeGraphGroup(array(g1, g2), array());
```

参考Graph GraphGroup DecodeGraphGroup DecodeGraph EncodeGraph

###### DecodeGraphGroup

用途：作图函数相关函数。
参数：arg1，arg2，arg3（按示例顺序传入）。
返回：处理后的结果值。

范例

```tsl
VolData := Nday2(GfVol() , Vol() , gfColor() , ifthen ( Close() > Open() , ClRed() , ClGreen() ) );
MAVOL := Nday2('MA5', MA ( Vol() , 5 ) );
VOLGraph := Graph(gtBar(), 'VOLGraph', VolData);
MAVOLGraph := Graph(gtLine(), 'MA5Graph', MAVOL, gfColor(), clBlue());
DATAARR := GraphGroup(VOLGraph, MAVOLGraph, gfMinValue(), 0);
DecodeGraphGroup(DATAARR, x, y);
return x; // 返回分解后的柱状图
```

参考Graph GraphGroup EncodeGraphGroup DecodeGraph EncodeGraph

###### DecodeGraph

用途：作图函数相关函数。
参数：arg1，arg2，arg3，arg4，arg5（按示例顺序传入）。
返回：处理后的结果值。

范例

```tsl
setsysparam(pn_stock(), 'SZ000002');
setsysparam(pn_date(), inttodate(20140117));
setsysparam(pn_nday(), 250);
t1 := NDay2(gfopen(), Open() ,
gfclose(), close(),
gfhigh(), high(),
gflow(), low(),
gftime(), datetimetostr(sp_time()),
// KLine颜色
gfColor(), IfThen3(Close(), Open(),
ClRed() ,//涨颜色
clYellow() ,//平颜色
Clblue()//跌颜色
),
gffill(), ifThen3(Close(), Open(), flClear(), flSolid(), flSolid())
);
g1 := graph(gtKline(), 'KLine', t1);
DecodeGraph(g1, ty, na, da, pr);
return array(ty, na, da, pr);
```

参考Graph GraphGroup DecodeGraphGroup EncodeGraphGroup EncodeGraph

###### EncodeGraph

用途：作图函数相关函数。
参数：arg1，arg2，arg3，arg4（按示例顺序传入）。
返回：处理后的结果值。

范例

```tsl
setsysparam(pn_stock(), 'SZ000002');
setsysparam(pn_date(), inttodate(20140117));
setsysparam(pn_nday(), 250);
t1 := NDay2(gfopen(), Open() ,
gfclose(), close(),
gfhigh(), high(),
gflow(), low(),
gftime(), datetimetostr(sp_time()),
// KLine颜色
gfColor(), IfThen3(Close(), Open(),
ClRed() ,//涨颜色
clYellow() ,//平颜色
Clblue()//跌颜色
),
gffill(), ifThen3(Close(), Open(), flClear(), flSolid(), flSolid())
);
return EncodeGraph(gtkline(), 'KLine', t1, array());
```

参考Graph GraphGroup DecodeGraphGroup EncodeGraphGroup DecodeGraph

###### FastLine_Web

- Graph
- GraphGroup
- MergeGraph
- EncodeGraphGroup
- DecodeGraphGroup
- DecodeGraph
- EncodeGraph
- FastLine_Web
- BarLine_Web
- PieLine_Web
- GetColorByIndex

###### BarLine_Web

###### PieLine_Web

###### GetColorByIndex

用途：作图函数相关函数。
参数：arg1（按示例顺序传入）。
返回：整数。

范例

```tsl
return GetColorByIndex(1);
// 返回：16711680
```

##### 图形类型函数

###### 内容

- gtLine
- gtKLine
- gtTower
- gtAmerican
- gtBar
- gtSingleBar
- gtCircle

###### gtLine

###### gtKLine

###### gtTower

###### gtAmerican

###### gtBar

###### gtSingleBar

###### gtCircle

##### 图形字段函数

这类函数用于描述数据点的特性或者描述整个图形的属性

###### 内容

- gfValue
- gfClose
- gfOpen
- gfHigh
- gfLow
- gfTowerLow
- gfTowerHigh
- gfTowerMid
- gfVol
- gfAmount
- gfTime
- gfColor
- gfFill
- gfFlag
- gfRateFlag
- gfZero
- gfMaxValue
- gfMinValue
- gfLTP
- gfTitleCaption
- gfLeftTitleCaption
- gfCoordinate

###### gfValue

###### gfClose

###### gfOpen

###### gfHigh

###### gfLow

###### gfTowerLow

###### gfTowerHigh

###### gfTowerMid

###### gfVol

###### gfAmount

###### gfTime

###### gfColor

参考颜色函数

###### gfFill

参考图形填充设置函数

###### gfFlag

参考图形标示函数

###### gfRateFlag

###### gfZero

参考TGraphGroup

###### gfMaxValue

参考TGraphGroup

###### gfMinValue

参考TGraphGroup

###### gfLTP

参考TGraphGroup

###### gfTitleCaption

参考TGraphGroup

###### gfLeftTitleCaption

参考TGraphGroup

###### gfCoordinate

参考TGraphGroup

##### 图形标示函数

用于为图形做出一定标示，例如买入点或卖出点，取值为整数。

###### 内容

- fgNone
- fgUp
- fgDown
- fgLeft
- fgRight
- fgLeftUp
- fgLeftDown
- fgRightUp
- fgRightDown

###### fgNone

###### fgUp

###### fgDown

###### fgLeft

###### fgRight

###### fgLeftUp

###### fgLeftDown

###### fgRightUp

###### fgRightDown

##### 图形填充设置函数

用于设定图形是否填充以及如何填充,取值为整数。

参考：gfFill

###### 内容

- flSolid
- flClear
- flHorizontal
- flVertical
- flFDiagonal
- flBDiagonal
- flCross
- flDiagCross

###### flSolid

参考gfFill flClear flHorizontal flVertical flFDiagonal flBDiagonal flCross
flDiagCross

###### flClear

参考gfFill flSolid flHorizontal flVertical flFDiagonal flBDiagonal flCross
flDiagCross

###### flHorizontal

参考gfFill flSolid flClear flVertical flFDiagonal flBDiagonal flCross
flDiagCross

###### flVertical

参考gfFill flSolid flClear flHorizontal flFDiagonal flBDiagonal flCross
flDiagCross

###### flFDiagonal

参考gfFill flSolid flClear flHorizontal flVertical flBDiagonal flCross
flDiagCross

###### flBDiagonal

参考gfFill flSolid flClear flHorizontal flVertical flFDiagonal flCross
flDiagCross

###### flCross

参考gfFill flSolid flClear flHorizontal flVertical flFDiagonal flBDiagonal
flDiagCross

###### flDiagCross

参考gfFill flSolid flClear flHorizontal flVertical flFDiagonal flBDiagonal
flCross

##### 颜色函数

###### 内容

- clBlack
- clMaroon
- clGreen
- clOlive
- clNavy
- clPurple
- clTeal
- clGray
- clSilver
- clRed
- clLime
- clYellow
- clBlue
- clFuchsia
- clAqua
- clLtGray
- clDkGray
- clWhite
- clMoneyGreen
- clSkyBlue
- clCream
- clMedGray

###### clBlack

###### clMaroon

###### clGreen

###### clOlive

###### clNavy

###### clPurple

###### clTeal

###### clGray

###### clSilver

###### clRed

###### clLime

###### clYellow

###### clBlue

###### clFuchsia

###### clAqua

###### clLtGray

###### clDkGray

###### clWhite

###### clMoneyGreen

###### clSkyBlue

###### clCream

###### clMedGray

##### 颜色变换函数

###### 内容

- GetCValue
- GetMValue
- GetYValue
- GetKValue
- CMYK
- RGB
- Rgbbgr
- PaletteRGB
- PaletteIndex
- GetRValue
- GetGValue
- GetBValue

###### GetCValue

###### GetMValue

###### GetYValue

###### GetKValue

###### CMYK

###### RGB

###### Rgbbgr

###### PaletteRGB

###### PaletteIndex

###### GetRValue

###### GetGValue

###### GetBValue
