|
|
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Objectjavax.servlet.jsp.tagext.TagSupport
javax.servlet.jsp.tagext.BodyTagSupport
org.opengion.hayabusa.taglib.CommonTagSupport
org.opengion.hayabusa.taglib.ChartCreateTag
public class ChartCreateTag
BODY部に指定のSQLの検索結果をチャート(円、棒、線)で表示するタグです。
チャート化には、JFreeChart (http://www.jfree.org/jfreechart/) を使用しています。
チャートの種類は、chartDataset タグで指定します。これは、複数の異なるチャートを
合成表示する機能が、JFreeChart にある為です。ただし、専門的には、CategoryDataset のみ
いまは、合成が可能です。
処理の実行にあたり、キャッシュが有効(useCache="true")であれば、キャッシュデータを
使用します。キャッシュは、masterKey 属性で指定されたキーワード毎に、JFreeChart
オブジェクトをキャッシュします。また、seriesPikup 違いの場合は、再検索せずに、
キャッシュが使用できます。さらに、seriesPikup が同じ場合(masterKey も同じ)は、
すでに画像ファイルが作成済みなので、画像ファイルのみを返します。
各属性は、{@XXXX} 変数が使用できます。
これは、ServletRequest から、XXXX をキーに値を取り出し,この変数に割り当てます。
つまり、このXXXXをキーにリクエストすれば、この変数に値をセットすることができます。
●形式:<og:chartCreate title="…" … /> ●body:あり(chartDataset) ●使用例 <og:chartCreate title = "JFreeChart Test" チャートタイトル domainLabel = "ドメインラベル" 横軸ラベル width = "200" チャート表示幅 height = "200" チャート表示高さ showLegend = "[true/false]" 凡例の表示可否(true/false) rectangleEdge = "[TOP|BOTTOM|RIGHT|LEFT]" 凡例の表示箇所 plotOrientation = "[VERTICAL|HORIZONTAL]" チャートの軸表示方向 chartBackColor = "WHITE" 背景色 plotBackColor = "LIGHT_GRAY" 描画領域色 rotationLabel = "3" 横軸ラベルの傾き domainMarker = "KING" 横軸のマーカーライン(縦棒) useMarkerLabel = "[true/false]" マーカーラインの文字有無 useDomainLabel = "[true/false]" 横軸ラベルの表示有無 categorySkip = "3" 横軸ラベルをスキップする間隔 categoryCutNo = "6" 横軸ラベルの文字位置指定のキーブレイク categoryAnchor = "[START|MIDDLE|END]" 横軸のグリッド(垂直線)の書き出し位置 useDomainLine = "[false/true]" 横軸のグリッド表示有無(垂直線) domainLineColor = "LIGHT_GRAY" 横軸のグリッド線の色 useRangeLine = "[true/false]" 縦軸のグリッド表示有無(水平線) rangeLineColor = "LIGHT_GRAY" 縦軸のグリッド線の色 rangeSkip = "-5" 縦軸のグリッド(水平線)をスキップする間隔 useCache = "[false|true]" キャッシュの有無 masterKey = "{@XXXX}" キャッシュ用マスタキー seriesPikup = "2" ピックアップするシリーズNo imageMapUrl = "link.jsp,BLOCK" クリッカブル・マップ用URL imageMapTarget = "CONTENTS" クリッカブル・マップ用TARGET categoryMargin = "[0.0~1.0]" カテゴリマージン(0.0~1.0) lowerMargin = "[0.0~1.0]" 下方マージン(0.0~1.0) upperMargin = "[0.0~1.0]" 上方マージン(0.0~1.0) > <og:chartDataset chartType = "{@chartType}" valueLabel = "{@valueLabel}" lowerBound = "{@lowerBound}" upperBound = "{@upperBound}" markValues = "{@markValues}" markColors = "{@markColors}" useGradient = "{@useGradient}" shapesVisible = "{@shapesVisible}" useDottedLine = "{@useDottedLine}" seriesColors = "{@seriesColors}" valueLabelsVisible = "[true|false]" valueMarksVisible = "[true|false]" > <jsp:text>{@SQL}</jsp:text> </og:chartDataset> </og:chartCreate> 複数のグラフを重ね合わせる場合は、chartDataset タグを chartCreate のBODY部に 複数記述します。 <og:chartCreate title = "{@title}" domainLabel = "{@domainLabel}" width = "{@width}" height = "{@height}" > <og:chartDataset chartType = "{@chartType1}" valueLabel = "{@valueLabel1}" lowerBound = "{@lowerBound1}" upperBound = "{@upperBound1}" markValues = "{@markValues1}" markColors = "{@markColors1}" > <jsp:text>{@SQL1}</jsp:text> </og:chartDataset> <og:chartDataset chartType = "{@chartType2}" valueLabel = "{@valueLabel2}" lowerBound = "{@lowerBound2}" upperBound = "{@upperBound2}" markValues = "{@markValues2}" markColors = "{@markColors2}" > <jsp:text>{@SQL2}</jsp:text> </og:chartDataset> </og:chartCreate> rectangleEdge属性 は、凡例の表示箇所を示す、RectangleEdge クラスの値を設定します。 [rectangleEdge属性] TOP 上側 BOTTOM 下側 RIGHT 右側 LEFT 左側 plotOrientation属性 は、チャートの軸表示方向を設定します。 [renderer属性] VERTICAL 縦方向 HORIZONTAL 横方向
フィールドの概要 |
---|
クラス javax.servlet.jsp.tagext.BodyTagSupport から継承されたフィールド |
---|
bodyContent |
クラス javax.servlet.jsp.tagext.TagSupport から継承されたフィールド |
---|
id, pageContext |
インタフェース javax.servlet.jsp.tagext.BodyTag から継承されたフィールド |
---|
EVAL_BODY_BUFFERED, EVAL_BODY_TAG |
インタフェース javax.servlet.jsp.tagext.IterationTag から継承されたフィールド |
---|
EVAL_BODY_AGAIN |
インタフェース javax.servlet.jsp.tagext.Tag から継承されたフィールド |
---|
EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE |
コンストラクタの概要 | |
---|---|
ChartCreateTag()
|
メソッドの概要 | |
---|---|
protected void |
addChartDataset(ChartDataset chDataset)
BODY要素に記述した、chartDataset タグの属性設定クラスをListに追加します。 |
int |
doEndTag()
Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。 |
int |
doStartTag()
Taglibの開始タグが見つかったときに処理する doStartTag() を オーバーライドします。 |
protected void |
release2()
タグリブオブジェクトをリリースします。 |
void |
setCategoryAnchor(java.lang.String anchor)
【TAG】横軸のグリッド(垂直線)の書き出し位置(START,MIDDLE,END)を指定します。 |
void |
setCategoryCutNo(java.lang.String cutNo)
【TAG】横軸ラベルの文字位置指定のキーブレイクを指定します。 |
void |
setCategoryMargin(java.lang.String margin)
【TAG】カテゴリマージン(0.0~1.0)を指定します。 |
void |
setCategorySkip(java.lang.String step)
【TAG】横軸ラベルをスキップする間隔を指定します。 |
void |
setChartBackColor(java.lang.String chBackClr)
【TAG】チャートの背景色を指定します。 |
void |
setDomainLabel(java.lang.String dmLbl)
【TAG】チャートのドメインラベルを指定します。 |
void |
setDomainLineColor(java.lang.String color)
【TAG】横軸のグリッド線の色を指定します。 |
void |
setDomainMarker(java.lang.String marker)
【TAG】チャートの横軸の値(ドメイン)に合致する位置にマーカーラインを設定します。 |
void |
setHeight(java.lang.String ht)
【TAG】チャートの縦幅をセットします(初期値:200)。 |
void |
setImageMapTarget(java.lang.String target)
【TAG】クリッカブル・マップ用TARGETを指定します。 |
void |
setImageMapUrl(java.lang.String imap)
【TAG】クリッカブル・マップ用URLを指定します。 |
void |
setLowerMargin(java.lang.String margin)
【TAG】下方マージン(0.0~1.0)を指定します。 |
void |
setMasterKey(java.lang.String mkey)
【TAG】キャッシュ用マスタキーを指定します。 |
void |
setPlotBackColor(java.lang.String plBackClr)
【TAG】チャートの描画領域の色を指定します。 |
void |
setPlotOrientation(java.lang.String orientation)
【TAG】チャートのプロット(Plot)表示方向を、VERTICAL(or V) , HORIZONTAL(or H)で指定します(初期値:VERTICAL)。 |
void |
setRangeLineColor(java.lang.String color)
【TAG】縦軸のグリッド線の色を指定します。 |
void |
setRangeSkip(java.lang.String rngSkip)
【TAG】縦軸のグリッド線(水平線)をスキップする間隔を指定します。 |
void |
setRectangleEdge(java.lang.String rectEdge)
【TAG】チャートの表示箇所を、(TOP、BOTTOM、RIGHT、LEFT)で指定します(初期値:BOTTOM)。 |
void |
setRotationLabel(java.lang.String rttLabel)
【TAG】チャートのカテゴリーラベルの方向を指定します(3:60度)。 |
void |
setSeriesPikup(java.lang.String pikup)
【TAG】複数シリーズのピックアップを行う場合のシリーズ番号を指定します。 |
void |
setShowLegend(java.lang.String swLegend)
【TAG】チャートの凡例の表示可否(true/false)をセットします(初期値:true[表示する])。 |
void |
setTitle(java.lang.String ttl)
【TAG】チャートのタイトルをセットします。 |
void |
setUpperMargin(java.lang.String margin)
【TAG】上方マージン(0.0~1.0)を指定します。 |
void |
setUseCache(java.lang.String flag)
【TAG】JFreeChart オブジェクトをキャッシュするかどうかを指定します(初期値:false)。 |
void |
setUseDomainLabel(java.lang.String flag)
【TAG】横軸ラベルのラベルを表示するかどうかを指定します(初期値:true)。 |
void |
setUseDomainLine(java.lang.String useLine)
【TAG】横軸のグリッド表示有無(垂直線)を指定します(初期値:false)。 |
void |
setUseMarkerLabel(java.lang.String flag)
【TAG】マーカーラインに、その設定値を表示するかどうかを指定します(初期値:true)。 |
void |
setUseRangeLine(java.lang.String useLine)
【TAG】縦軸のグリッド表示有無(水平線)を指定します(初期値:true)。 |
void |
setUseToolTip(java.lang.String toolTip)
【TAG】ツールチップスを利用(true)/利用しない(false)を指定します。 |
void |
setWidth(java.lang.String wd)
【TAG】チャートの横幅をセットします(初期値:200)。 |
java.lang.String |
toString()
このオブジェクトの文字列表現を返します。 |
クラス javax.servlet.jsp.tagext.BodyTagSupport から継承されたメソッド |
---|
doInitBody, getBodyContent, getPreviousOut, release, setBodyContent |
クラス javax.servlet.jsp.tagext.TagSupport から継承されたメソッド |
---|
findAncestorWithClass, getId, getParent, getValue, getValues, removeValue, setId, setPageContext, setParent, setValue |
クラス java.lang.Object から継承されたメソッド |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
インタフェース javax.servlet.jsp.tagext.Tag から継承されたメソッド |
---|
getParent, setPageContext, setParent |
コンストラクタの詳細 |
---|
public ChartCreateTag()
メソッドの詳細 |
---|
public int doStartTag()
javax.servlet.jsp.tagext.Tag
内の doStartTag
CommonTagSupport
内の doStartTag
public int doEndTag()
javax.servlet.jsp.tagext.Tag
内の doEndTag
CommonTagSupport
内の doEndTag
5.2.1.0 (2010/10/01) debugPrint() メソッドの処理条件見直し |
protected void release2()
CommonTagSupport
内の release2
4.0.1.0 (2007/12/13) categoryMargin、lowerMargin、upperMargin 属性を追加 |
4.1.1.0 (2008/02/04) categoryCutNo , categoryAnchor , rangeSkip 属性を追加 |
public void setTitle(java.lang.String ttl)
ttl
- タイトルチャートのタイトルをセットします。
public void setWidth(java.lang.String wd)
wd
- 横幅タイトルや凡例も含んだ大きさです。データ領域は自動計算されます。
4.0.1.0 (2007/12/13) 引数に "px" を使用できるようにする。 |
public void setHeight(java.lang.String ht)
ht
- 縦幅タイトルや凡例も含んだ大きさです。データ領域は自動計算されます。
4.0.1.0 (2007/12/13) 引数に "px" を使用できるようにする。 |
public void setDomainLabel(java.lang.String dmLbl)
dmLbl
- チャートのドメインラベルチャートのドメインラベルを指定します。
public void setShowLegend(java.lang.String swLegend)
swLegend
- 凡例の表示可否 : 表示する(true) /しない(その他)初期値は、表示する(true) です。
public void setRectangleEdge(java.lang.String rectEdge)
rectEdge
- 凡例表示方向 : (TOP、BOTTOM、RIGHT、LEFT)表示箇所は、org.jfree.ui.RectangleEdge クラスの設定値を使用します。 指定できるのは、TOP、BOTTOM、RIGHT、LEFT で、各文字の頭一文字で 判定してます。つまり、T,B,R,L で、判定を行い、それ以外はエラーになります。 初期値は、BOTTOM です。
public void setPlotOrientation(java.lang.String orientation)
orientation
- プロット表示方向 : VERTICAL(or V) , HORIZONTAL(or H)軸表示方向は、org.jfree.chart.plot.PlotOrientation クラスの設定値を使用します。 指定できるのは、VERTICAL、HORIZONTALで、各文字の頭一文字で 判定してます。つまり、V,H で、判定を行い、それ以外はエラーになります。 初期値は、VERTICAL です。
public void setChartBackColor(java.lang.String chBackClr)
chBackClr
- チャートの背景色Color.BLACK
指定文字列は、java.awt.Color クラスのstatic フィールド名で指定します。 BLACK , BLUE , CYAN , DARK_GRAY , GRAY , GREEN , LIGHT_GRAY , MAGENTA , ORANGE , PINK , RED , WHITE , YELLOW , (PURPLE) が指定できます。 また、#XXXXXX形式の16bitRGB表記 でも指定可能です。
public void setPlotBackColor(java.lang.String plBackClr)
plBackClr
- チャートの描画領域色Color.BLACK
指定文字列は、java.awt.Color クラスのstatic フィールド名で指定します。 BLACK , BLUE , CYAN , DARK_GRAY , GRAY , GREEN , LIGHT_GRAY , MAGENTA , ORANGE , PINK , RED , WHITE , YELLOW , (PURPLE) が指定できます。 また、#XXXXXX形式の16bitRGB表記 でも指定可能です。
public void setRotationLabel(java.lang.String rttLabel)
rttLabel
- String カテゴリーラベルの方向方向は、上方向に対して、(PI / 指示数) で求まる値に設定します。 この指示数に相当する値を設定します。 1:180度 、2:90度 、3:60度 、4:45度 、6:30度 ・・・ マイナスは、した方向に回転させます。 0 を指定した場合は、何も設定しません。 初期値は、3:60度です。
public void setDomainMarker(java.lang.String marker)
marker
- ドメインのマーカーラインこの属性には、マーカーラインを設定する値を記述します。
public void setUseDomainLabel(java.lang.String flag)
flag
- 横軸ラベルの表示有無(true:表示する/false:表示しない)ドメイン(横軸)が、多数存在する場合、ドメインラベルが見えにくくなります。 そのようなケースで、横軸のラベルそのものを表示しない場合に、false を 設定します。 初期値は、表示する(true)です。
public void setUseMarkerLabel(java.lang.String flag)
flag
- マーカーラインの設定値表示(true:表示する/false:表示しない)ドメイン(横軸)が、多数存在する場合、ドメインラベルが見えない場合があります。 そのようなケースで、見たい値にマーカーラインを設定し、その横に、ドメインラベル を表示する事で、ピックアップしている軸の値を容易に知ることが可能です。 初期値は、表示する(true)です。
public void setUseCache(java.lang.String flag)
flag
- JFreeChartをキャッシュするかどうか(true:キャッシュする/false:キャッシュしない)setDomainMarker( String )
,
setSeriesPikup( String )
useCache="true" を設定すると、session に、HybsSystem.JF_CHART_CACHE_KEY キーで、キャッシュされます。 そのときに、domainMarker 属性と、seriesPikup 属性だけ、再設定可能になっています。 初期値は、キャッシュしない(false)です。
public void setSeriesPikup(java.lang.String pikup)
pikup
- String シリーズ番号複数シリーズ(検索時に複数項目を同時に検索する場合)では、チャート上に 複数のグラフが表示されますが、その中の一つをピックアップする場合に、 シリーズ番号を指定します。 シリーズ番号は、0 から始まる数字です。 ここでは、ピックアップされたシリーズは、赤色で表示されます。 それ以外は、グレー色での表示になります。 seriesPikup を使用すると、chartDataset タグの useValueVisible 属性が 影響を受けます。この属性は、データの値(itemText)を表示しますが、 seriesPikup が指定された場合は、そのシリーズのみにラベル表示します。
public void setMasterKey(java.lang.String mkey)
mkey
- String キャッシュ用マスタキーuseCache="true" に設定した場合、キャッシュを使用できるか確認します。 この場合、seriesPikup 違いの場合は、JFreeChart オブジェクトそのものを キャッシュしておけば、データベースアクセスなしで、グラフを再描画 させることが可能です。 この、同一 JFreeChart を指定するためのキーを、ここで設定します。 このキーの個数だけ、JFreeChart がキャッシュされます。 なお、キャッシュ保持時間は、5分固定です。
public void setImageMapUrl(java.lang.String imap)
imap
- String クリッカブル・マップ用URLsetImageMapTarget( String )
画像に、クリッカブル・マップを作成する場合の、URL を指定します。 これは、画像上にエリア指定でリンク引数を作成することが可能です。 URL 自身は、? 付きで固定値の引数を連結することが可能です。 クリックしたエリアのカテゴリやインデックスの値(引数)は、自動的に 設定されます。(指定しない場合はチャートによって異なります)・Pie :category、pieIndex ・XY :series、item ・Category :series、categoryこの引数の URL の名称を変更したい場合は、URL に続けて、カンマ(,) で、 名称を記述してください。 例:link.jsp,BLOCK
public void setImageMapTarget(java.lang.String target)
target
- String クリッカブル・マップ用TARGETsetImageMapUrl( String )
画像に、クリッカブル・マップを作成する場合の、TARGET を指定します。 これは、画像上にエリア指定でリンクを作成する場合のフレーム指定です。
public void setCategoryMargin(java.lang.String margin)
margin
- String カテゴリマージン(0.0~1.0)カテゴリ(グラフの横軸に相当)の表示間隔(マージン)の比率を指定します。 この比率は、% ではなく、数字(double)での設定になります。 何も指定しない場合は、デフォルトで自動調整されます。
4.0.2.0 (2007/12/20) 新規追加 |
public void setLowerMargin(java.lang.String margin)
margin
- String 下方マージン(0.0~1.0)カテゴリ(グラフの横軸に相当)の下方側(左側)のマージンの比率を指定します。 この比率は、% ではなく、数字(double)での設定になります。 何も指定しない場合は、デフォルトで自動調整されます。
4.0.2.0 (2007/12/20) 新規追加 |
public void setUpperMargin(java.lang.String margin)
margin
- String 上方マージン(0.0~1.0)カテゴリ(グラフの横軸に相当)の上方側(右側)のマージンの比率を指定します。 この比率は、% ではなく、数字(double)での設定になります。 何も指定しない場合は、デフォルトで自動調整されます。
4.0.2.0 (2007/12/20) 新規追加 |
public void setUseDomainLine(java.lang.String useLine)
useLine
- String 横軸のグリッド表示有無(垂直線)ドメイン(横軸)に対する、グリッドラインを表示するかどうか指定します。 何も指定しない場合は、表示しません。(false)
4.0.3.0 (2008/01/07) 新規追加 |
public void setDomainLineColor(java.lang.String color)
color
- String 横軸のグリッド線の色ドメイン(横軸)に対する、グリッドラインの表示色を指定します。 何も指定しない場合は、デフォルトで自動設定されます。
4.0.3.0 (2008/01/07) 新規追加 |
public void setCategorySkip(java.lang.String step)
step
- String スキップする間隔setCategoryCutNo( String )
横軸ラベル(カテゴリラベル表示)する際に、スキップする間隔を指定します。 "1" (初期値)では、1つづつ表示(つまり、すべて表示する)します。 "2" とすると、1つおきに、"3" とすると、2つおきに表示します。 初期値は、"1" (すべて表示)です。 なお、先頭から表示を開始します。 注意:これとは別に、ラベル先頭に "_" を付けた場合は、ラベルを表示しません。 また、categoryCutNo が指定された場合は、categorySkip は使用されません。
public void setCategoryCutNo(java.lang.String cutNo)
cutNo
- String キーブレイク位置setCategorySkip( String )
横軸ラベル(カテゴリラベル表示)する際に、ラベルの先頭から、この指定文字数だけ カットして、表示します。 その際、前回作成したカットラベルと、同一ラベルの場合は、表示しません。 例えば、データは、年月日で、年と月のみ(先頭6文字)を指定すると、 日のデータは、ラベルが表示されません。 指定される数字は、1以上の整数としてください。 初期値は、すべて表示です。 注意:これとは別に、ラベル先頭に "_" を付けた場合は、ラベルを表示しません。
4.1.1.0 (2008/02/04) 新規追加 |
public void setCategoryAnchor(java.lang.String anchor)
anchor
- String 横軸のグリッド(垂直線)の書き出し位置(START,MIDDLE,END)横軸のグリッド(垂直線)を、グラフのどの位置に記述するかを指定します。 具体的な値は、CategoryAnchor オブジェクトの値になります。 ここでは、文字列で(START,MIDDLE,END)を指定します。(先頭一文字で判定) 何も指定しない場合は、デフォルト(MIDDLE)です。
4.1.1.0 (2008/02/14) 新規追加 |
public void setUseRangeLine(java.lang.String useLine)
useLine
- String 横軸のグリッド表示有無(垂直線)レンジ(縦軸)に対する、グリッドラインを表示するかどうか指定します。 何も指定しない場合は、表示しません。(false)
4.0.3.0 (2008/01/07) 新規追加 |
public void setRangeLineColor(java.lang.String color)
color
- String 縦軸のグリッド線の色レンジ(縦軸)に対する、グリッドラインの表示色を指定します。 何も指定しない場合は、デフォルトで自動設定されます。
4.0.3.0 (2008/01/07) 新規追加 |
public void setRangeSkip(java.lang.String rngSkip)
rngSkip
- String 縦軸のグリッド線(水平線)をスキップする間隔縦軸のグリッド線(水平線)を表示する際に、スキップする間隔を指定します。 通常は、ラベルと同じだけのグリッド線が掛かれますが、ラベルよりも 少ない数のグリッド線(例えば、2つおき)を出す場合に、値を設定します。 "1" (初期値)では、1つづつ表示(つまり、すべて表示する)します。 "2" とすると、1つおきに、"3" とすると、2つおきに表示します。 初期値は、"1" (すべて表示)です。 なお、先頭から表示を開始します。
4.1.1.0 (2008/02/04) 新規追加 |
public void setUseToolTip(java.lang.String toolTip)
toolTip
- String ツールチップスを利用(true)/利用しない(false)ラベルを利用する際に、ラベルと図面、隣のラベル同士が重なることがあります。 この場合、ツールチップスの利用をお勧めします。 初期値は'false'です。
4.3.1.0 (2008/08/09) 新規追加 |
protected void addChartDataset(ChartDataset chDataset)
chDataset
- ChartDataset chartDataset タグの属性設定クラスpublic java.lang.String toString()
CommonTagSupport
内の toString
|
openGion 5.5.2.1 | ||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |