DrawGraphメソッド

グラフを描画します。
 
[構文]
 
レポートライブラリOCX
 
Object.DrawGrap (graphtype, sx, sy, width, height, data, fontinfo, numinfo, info1, info2)
 
レポートライブラリ.NETコントロール
 
long Object.DrawGraph (graphtype, sx, sy, width, height, data, fontinfo, numinfo, info1, info2)
 

設定項目

内容

Object

 

オブジェクトへの参照を表すオブジェクト式

graphtype

long

グラフの種類(設定値参照)

sx

long

描画する左上X座標(1/100mm単位)

sy

long

描画する左上Y座標(1/100mm単位)

width

string

描画する領域の幅(1/100mm単位)

height

long

描画する領域の高さ(1/100mm単位)

data

string

描画するグラフデータ

fontinfo

string

文字描画に使用するフォント情報

numinfo

string

数値軸情報

info1

string

データ系列情報または散布図X軸情報

info2

string

項目情報または散布図情報

 
[エラーコード]
 

内容

1011

描画エラー

1029

Startを行ってください

1124

PDFドキュメントに埋め込めないフォントがある

1125

PDFドキュメントにフォントを埋め込めない文字コードがある

 
[設定値]
 
graphtype には次の値を指定します。
 

定数

内容

JV_GRAPH_COL

1

2D横棒グラフ

JV_GRAPH_BAR

2

2D縦棒グラフ

JV_GRAPH_PIE

3

円グラフ

JV_GRAPH_RADAR

4

レーダーグラフ

JV_GRAPH_AREA

5

面グラフ

JV_GRAPH_SCATTER

6

散布図グラフ

JV_GRAPH_LINE

7

折れ線グラフ

 
ポイント種には次の値を指定します。
 

定数

内容

JV_POINT_NONE

0

なし

JV_POINT_BOX

1

四角形

JV_POINT_CIRCLE

2

JV_POINT_TRIANGLE1

3

三角形

JV_POINT_TRIANGLE2

4

逆三角形  

JV_POINT_LOZENGE

5

ひし形

 
塗り潰しパターには次の値を指定します。
 

定数

内容

JV_FILL_NULL

0

塗り潰しなし

JV_FILL_SOLID

1

前景色で塗り潰し(初期値)

JV_FILL_DKGRAY

2

濃い灰色

JV_FILL_GRAY

3

灰色

JV_FILL_LTGRAY

4

薄い灰色

JV_FILL_WHITE

5

JV_FILL_FDIAGONAL

6

45度右上がりハッチ

JV_FILL_BDIAGONAL

7

45度右下がりハッチ

JV_FILL_HORIZONTAL

8

水平ハッチ

JV_FILL_VERTICAL

9

垂直ハッチ

JV_FILL_CROSS

10

水平と垂直のクロスハッチ

JV_FILL_DIAGCROSS

11

45度のクロスハッチ

JV_FILL_BLACK

12

 黒

 
線種には次の値を指定します。
 

定数

内容

JV_PS_SOLID

0

実線 (初期値)

JV_PS_DASH

1

破線

JV_PS_DOT

2

点線

JV_PS_DASHDOT

3

一点鎖線

JV_PS_DASHDOTDOT

4

二点鎖線  

 
[解説]
   
1124エラーと1125エラーは、Adobe PDF形式のドキュメントを作成中に発生するエラーです。
これらのエラーは、PDFドキュメントへフォントを埋め込むようEmbedFont メソッドで設定した場合に発生します。
1124エラーは、fontinfo で指定したフォントの中にPDFドキュメントへ埋め込むことができないフォントが見つかった時に発生します。このエラーは、描画に使われている全てのフォントを埋め込むようにEmbedFont メソッドで設定した場合に起こります。エラーの原因となったフォント名は、エラーが発生した時のエラーメッセージから取得することができます。
1125エラーは、PDFドキュメントへ埋め込むことができない文字コードが見つかった時に発生します。エラーの原因となった文字コードは、エラーが発生した時のエラーメッセージから取得することができます。
 
PDFドキュメントへフォントを埋め込む
 
data には、データ間をカンマで区切った値を指定します。データには整数を使用してください。小数を設定しても切り捨てられて整数となります。散布図では、Info2 のデータ倍率と組み合わせて小数を表現することができます。
 
fontinfo には、データ間をカンマで区切った値を指定します。データは「数値軸のフォント名、数値軸のフォントサイズ、info1 のフォント名、info1 のフォントサイズ、info2 のフォント名、info2 のフォントサイズ」の順番で指定します。フォントサイズの単位はポイントです。
 
numinfo には、データ間をカンマで区切った値を指定します。データは、「最小値、最大値、増分、目盛色、単位、凡例」の順番で指定します。ここで指定した最小値と最大値は、そのまま、数値軸の最小値と最大値となります。増分は、数値軸の最小値から最大値間の目盛のスキップ分となります。目盛色とは、目盛を描画する文字の色のことで、RGB値で指定します。単位とは、最大値の上側に、そのまま表示される文字列です。凡例には、表示(1)、非表示(0)を指定します。
   
データ系列情報または散布図X軸情報  
info1 は、グラフの種類が散布図以外の場合はデータ系列情報として扱われ、散布図の場合はX軸情報として扱われます。info1 には、データ間をカンマで区切った値を指定します。
 
info1 をデータ系列情報として使う場合、データは「系列名称、前景色、背景色、名称色、塗り潰しパターン、線種、ポイント種」の順番で、先頭から、データ系列の数分、繰り返して指定します。系列名称とは、グラフに表示されるデータ系列の名称です。前景色と背景色は、グラフデータを描画する図形の色で、RGB値で指定します。名称色とは、系列名称を描画する文字の色で、RGB値で指定します。塗り潰しパターンは、グラフデータを描画する図形の塗り潰しパターンとなります。線種は、グラフデータを描画する図形の線の種類となります。ポイント種は、折れ線グラフのポイント地点を示す図形の種類となります。
 
info1 をX軸情報として使う場合、データは「最小値、最大値、増分、目盛色、単位」の順番で指定します。最小値と最大値は、X軸の最小値と最大値になります。増分は数値軸の最小値から最大値間の目盛のスキップ分になります。目盛色とは、目盛を描画する文字の色で、RGB値で指定します。単位とは、最大値の横側にそのまま表示される文字列です。
 
項目情報または散布図情報
Info2 は、グラフの種類が散布図以外の場合は項目情報として扱われ、散布図の場合は散布図情報として扱われます。nfo2 は、項目情報や散布図情報が必要な場合のみ指定します。Info2 には、データ間をカンマで区切った値を指定します。
 
項目情報が未設定の場合は、系列情報が軸となります。Info2 が項目情報として指定された場合は、系列情報が凡例として表示され、項目情報が軸となります。データは「項目名称、名称色」の順番で、先頭から、項目の数分繰り返して指定します。項目名称は項目の名称として表示されます。名称色とは、項目名称を描画する文字色で、RGB値で指定します。
 
Info2 を散布図情報として使う場合、データは「ポイント種、ポイント色、データ倍率」の順番で指定します。ポイント種とは、データのポイントを表わす図形の形になります。ポイント色とは、ポイント種を描画する色で、RGB値で指定します。データ倍率は、data に設定した整数の値を少数にする場合に使います。データ倍率に10を指定すると、data の値は1/10倍され、100を指定すると1/100倍されます。data の値が整数の場合は、データ倍率には1を指定します。例えば1.58という値を設定する時には、data に158を指定し、データ倍率に100を指定します。こうしておくと、レポートライブラリが158を1/100倍してグラフを描画します。
 
StartメソッドとEnd(Abort)メソッドの間で実行します。
 
[コーディング例]
 
レポートライブラリOCX
 
''横棒グラフの描画
graphtype = JV_GRAPH_COL '2D横棒グラフ
numInfo = "0,100,10," + CStr(RGB(0, 0, 0)) + ",mm, 1" '数値軸情報
fontInfo = "MS 明朝,8,MS 明朝,8,MS ゴシック,8" 'フォント情報
'データ系列情報
info1 = "名古屋," + CStr(RGB(255, 0, 0)) + "," + CStr(RGB(255, 255, 255)) _
+ "," + CStr(RGB(255, 0, 0)) + "," + CStr(JV_FILL_FDIAGONAL) + "," _
+ CStr(JV_PS_SOLID) + "," + CStr(JV_POINT_BOX) + _
",東京," + CStr(RGB(0, 255, 0)) + "," + CStr(RGB(255, 255, 255)) _
+ "," + CStr(RGB(0, 255, 0)) + "," + CStr(JV_FILL_BDIAGONAL) + "," _
+ CStr(JV_PS_DASH) + "," + CStr(JV_POINT_CIRCLE) + _
",大阪," + CStr(RGB(0, 0, 255)) + "," + CStr(RGB(255, 255, 255)) _
+ "," + CStr(RGB(0, 0, 255)) + "," + CStr(JV_FILL_CROSS) + "," _
+ CStr(JV_PS_DASHDOT) + "," + CStr(JV_POINT_TRIANGLE1)
'項目情報
info2 = "1996," + CStr(RGB(255, 0, 0)) + _
",1997," + CStr(RGB(0, 255, 0)) + _
",1998," + CStr(RGB(0, 0, 255))
'グラフデータ
graphdata = "20,12,33,45,-5,58,67,25,41"
Jvr.DrawGraph(graphtype, 500, 0, 8000, 3500, _
graphdata, fontInfo, numInfo, info1, info2)
 
レポートライブラリ.NETコントロール
 
''横棒グラフの描画
graphtype = JV_GRAPH_COL '2D横棒グラフ
numInfo = "0,100,10," + CStr(RGB(0, 0, 0)) + ",mm, 1" '数値軸情報
fontInfo = "MS 明朝,8,MS 明朝,8,MS ゴシック,8" 'フォント情報
'データ系列情報
info1 = "名古屋," + CStr(RGB(255, 0, 0)) + "," + CStr(RGB(255, 255, 255)) _
+ "," + CStr(RGB(255, 0, 0)) + "," + CStr(JV_FILL_FDIAGONAL) + "," _
+ CStr(JV_PS_SOLID) + "," + CStr(JV_POINT_BOX) + _
",東京," + CStr(RGB(0, 255, 0)) + "," + CStr(RGB(255, 255, 255)) _
+ "," + CStr(RGB(0, 255, 0)) + "," + CStr(JV_FILL_BDIAGONAL) + "," _
+ CStr(JV_PS_DASH) + "," + CStr(JV_POINT_CIRCLE) + _
",大阪," + CStr(RGB(0, 0, 255)) + "," + CStr(RGB(255, 255, 255)) _
+ "," + CStr(RGB(0, 0, 255)) + "," + CStr(JV_FILL_CROSS) + "," _
+ CStr(JV_PS_DASHDOT) + "," + CStr(JV_POINT_TRIANGLE1)
'項目情報
info2 = "1996," + CStr(RGB(255, 0, 0)) + _
",1997," + CStr(RGB(0, 255, 0)) + _
",1998," + CStr(RGB(0, 0, 255))
'グラフデータ
graphdata = "20,12,33,45,-5,58,67,25,41"
ret = Jvr.DrawGraph(graphtype, 500, 0, 8000, 3500, _
graphdata, fontInfo, numInfo, info1, info2)