Develop and Download Open Source Software

OpenSource Downloads

7-Zip  (4,208)  
HandBrake Japanese Language Version  (3,353)  
CrystalDiskInfo  (1,743)  
CotEditor  (1,120)  
CrystalDiskMark  (866)  
Boookends  (788)  
SMPlayer  (642)  
えこでこツール  (599)  
Tera Term  (595)  
10  FFFTP  (579)  
11  Cabos  (530)  
12  BathyScaphe  (494)  
13  ffdshow  (481)  
14  MergeDoc  (464)  
15  ギコナビ  (438)  
More >>

最近ブックマークされた記事

Gambas 2.0で簡単なグラフを描く

2007年12月26日 12:20 Mark-Alexander-Bain(2007年12月12日(水)) 1 2 3 4 5
 3年ほど前データベースの開発が容易になるツールとして紹介したGambasの最新版Gambas 2.0が、近々リリースされる。そこで、最新版が持っている便利な機能の一つ、グラフ機能を紹介しよう。

 まず、Gambasの最新版をダウンロードしインストールする。起動はコマンドラインから。コマンドはgambas2だ。起動したGambas 2.0のツールボックスを見ると、Containerセクションに、この版から導入された新しいオブジェクトDrawingAreaがある。新しいフォームを作って、このDrawingAreaオブジェクトを挿入する。新しいGUIのスナップショットを用意したので、参考にして欲しい。

gambas.png
Gambas Development GUI

 ここで、DrawingAreaオブジェクトのプロパティーを一部設定しておく必要がある。オブジェクトを右クリックしPropertiesを選ぶ。あるいは、F4キーを押す。プロパティーが表示されたら、その一つCachedをTrueにする。こうしないと、グラフを作ってもオブジェクトには何も表示されないのだ。なお、ここでグラフの背景色を設定しておいてもよい。場所はBackgroundセクション。色はSystemタブ(あらかじめGambasが用意した色の中から選択)またはFreeタブ(自分で色を作成する)で指定する。

 以上で、グラフを作成する準備が整った。新しいフォームをダブルクリックすると、コード・エディターが開く。ここにサブルーチンを書いていくのだが、次に示すForm_Openの骨格はあらかじめ用意されている。

PUBLIC SUB Form_Open()
draw_chart()
END

SUB draw_chart()
END

 まず、draw_chartの骨格を作ろう。冒頭でDrawingAreaオブジェクトを初期化し、

DrawingArea1.Clear
draw.Begin(DrawingArea1)

 (データを描画し)、最後に描画セッションを終了する。

draw.End

 これにグラフのX軸とY軸の描画を加え、実行可能なサブルーチンにすると、次のようになる。

SUB draw_chart()
'Define the variables that we'll need
DIM origin_x AS Integer
DIM origin_y AS Integer
DIM max_x AS Integer
DIM max_y AS Integer
DIM x_string AS String
DIM y_string AS String

'Initialize the DrawingArea object
DrawingArea1.Clear
draw.Begin(DrawingArea1)

'Set the text that we're going to use for the axis titles
x_string = "Value"
y_string = "Date"

'Define the origin for the chart
origin_x = Len(x_string) * 10
origin_y = DrawingArea1.ClientHeight - 30

'Define the length or each axis
max_x = DrawingArea1.Width
max_y = DrawingArea1.Height * -1

'Draw each axis
draw.Line(origin_x, origin_y, max_x, origin_y)
draw.Line(origin_x, origin_y, origin_x, max_y)

'Finish with the DrawingArea object
draw.End
END

 ここでオブジェクトを実行すると、画面に水平線と垂直線が描かれるはずだ。

最終更新:2008年02月25日 17:07