グラフを描くには(grafica:GTitleの利用)

◆PROCESSING 逆引きリファレンス

 カテゴリー:GUI

グラフを描くには(grafica:GTitleの利用)

【概要】

PROCESSINGできれいなグラフを描くライブラリの1つにgraficaがあります。

グラフを描くには(grafica:導入とGPlotの利用)」では、graficaのインストール方法と、グラフの基本となるGPlotについて解説しました。

今回はGPlotのタイトル部分を構成するGTitleについて、紹介したいと思います。

なお、graficaの使い方については、以下の4つに分けて解説しています。

graficaのインストール方法と概要については「グラフを描くには(grafica:導入とGPlotの利用)」を参照してください。

 

前提知識

非常にシンプルなグラフ描画を行うプログラムは以下のようになります。以降は、これをベースに説明を行います。

詳細については後述しますがタイトルを描くためには、draw()関数の中でbeginDraw()とendDraw()の間にdrawTitle()を記述しておく必要があります。忘れるとタイトルが表示されませんので、注意してください。

<出力例>

graficaで描くグラフの代表的な構成パーツは以下のようになっています。

赤文字は、それぞれ別の部品(クラス)として構成されています。

 

【詳細】

タイトルオブジェクトを取得する

タイトルはGTitleクラスから構成されています。タイトル名についてはGPlotに対して直接指定する事も可能ですが、これについては「グラフを描くには(grafica:導入とGPlotの利用)」を参照してください。

まずはGPlotからタイトルオブジェクト(GTitle)を取得する方法です。

タイトルオブジェクトを取得void GTitle title = plot.getTitle();

plot:GPlotインスタンス
title:GTitleインスタンス

タイトルオブジェクト(GTitle)は、GPlotインスタンスから getTitle() 命令で取得します。

以下では、取り出したオブジェクトに対して設定できるいくつかの項目を紹介します。

 

タイトル名を設定する

タイトル名を設定void void title.setText( String titleText );

plot:GPlotインスタンス
title:GTitleインスタンス

取得したオブジェクトにタイトル名をセットします。タイトル名はGPlotに対して設定しても良いし、取得したGTitleに設定しても構いません。

<出力例>

上記例ではGPlotから取得したGTitleに、タイトル名を設定しています。

 

文字の大きさを指定する

文字の大きさを指定void title.setFontSize( int fontSize );

title:GTitleインスタンス
fontSize :タイトル名の文字サイズ(ポイント数)

setFontSize()で、タイトルに使う文字の大きさを変更可能です。デフォルトの文字サイズは13ポイントです。

<出力例>

 

文字の種類を指定する

文字の種類を指定void title.setFontName( String fontName );

title:GTitleインスタンス
fontName :タイトル用フォント名

setFontName()で、タイトルに使う文字の種類を変更可能です。

あなたの環境にインストールされているPROCESSINGで利用できるフォント名は以下のプログラムで列挙可能です。このプログラムで列挙されるフォント名を指定してください。

<出力例>

デフォルトの文字はSansSerif.bold または SansSerif になっています。

<出力例>

 

文字の色を指定する

文字の色を指定void title.setFontColor( int fcolor );

title:GTitleインスタンス
fcolot:タイトルの色

setFontColor()で、タイトルに使う文字の色を変更可能です。色はPROCESSINGのcolor命令で作成して与えます。

デフォルトの色はcolor(100)で、灰色っぽい色になっています。

<出力例>

 

文字の水平位置を指定する

文字の水平位置を指定void title.setTextAlignment( int alignment );

title:GTitleインスタンス
alignment:水平位置。LEFT、CENTER、RIGHTの何れかを指定

setTextAlignment()で、タイトルの水平位置を指定可能です。この値はPROCESSINGのtextAlign命令の第一引数として利用されます。デフォルトの水平位置はCENTER(中央)となっています。

垂直位置についてはBOTTOMを基準としており、直接変更することはできません。垂直位置を変更したい場合はsetOffsetメソッドを利用します。

水平位置の基準が、GPlotの左マージン+BOXエリアの半分の位置になっている事に注意してください。このメソッドは、タイトル文字列のLEFT、RIGHT、CENTERを、この基準位置に合わせるように動作します。

<出力例>

 

文字の垂直位置を指定する

文字の垂直位置を指定void title.setOffset( float offset );

title:GTitleインスタンス
offset:BOXエリアからの相対上位置

setOffset()で、タイトルに使う文字列の垂直位置を制御します。垂直位置はBOXエリアからの相対位置になります。デフォルトは10ピクセルです。

<出力例>

 

タイトルを描く

タイトルを描くvoid plot.drawTitle();

plot:GPlotインスタンス

グラフの描画命令はdraw()関数の中に記述します。

必ずGPlotクラスのbeginDrawメソッドとendDrawメソッドの間に、挟むようにして記述します。beginDrawメソッドとendDrawメソッドだけでは、グラフは描画されません。

タイトルを描画するには、drawTitleメソッドをbeginDrawメソッドとendDrawメソッドに挟むようにして記述します。

 

【関連記事】

 


サンプルプログラム

ちょっとしたグラフを表示する例:

身長と適正体重の関係をグラフにしてみました。私は・・・あ、考えないことにします(汗)。

<出力サンプル>

(画像URL:illust-ac 様:Yakkoさん)

 


PROCESSING逆引きリファレンス一覧 へ戻る

本ページで利用しているアイコン画像は、下記サイト様より拝借しております。各画像の著作権は、それぞれのサイト様および作者にあります。