<dvt:scatterGraph>

dvt:scatterGraph scatterGraph scatter graph

UIComponentクラス: oracle.adf.view.faces.bi.component.graph.UIGraph
コンポーネント・タイプ: oracle.dss.adf.graph.Graph (scatterGraph)

概要

<dvt:scatterGraph>タグは、ADFデータ視覚化散布図を作成する場合に使用します。散布図は、データ・マーカーの位置でデータを表します。散布図は、多数のデータ・ポイント間の一般的な関係を表示する場合に役立ちます。<dvt:scatterGraph>タグでサポートされているサブタイプは、次のとおりです。

<dvt:scatterGraph>タグでは、任意の散布図の作成に必要な属性と子タグの完全なセットが提供されます。グラフ・タイプを指定するには、グラフのsubType属性を使用します。最もよく使用される有用な子タグとして、<dvt:series>タグをあげることができます。たとえば、データ・マーカーの色を変更するには、<dvt:series>タグのセットを<dvt:seriesSet>タグ内で使用します。

グラフのレイアウトには、5つの主要コンポーネント(タイトルサブタイトル脚注legendAreaおよびplotArea)が入ります。plotAreaはデータを描画し、常にレンダリングされますが、他の4つのコンポーネントはオプションで、グラフ内の様々な場所に配置できます。グラフ全体に割り当てられたエリアの領域は、タイトルがあれば最初にタイトルに割り当てられます。タイトルサブタイトルは、デフォルトでグラフ最上部に並べて表示され、脚注はグラフ最下部に表示されます。次に、各系列に関連するマーカーの色とラベルが表示されるlegendAreaに領域が割り当てられます。このコンポーネントは、4つの場所(左右上下)のいずれかに配置できます。凡例にはグラフ領域のうち最大40%を使用できます。plotAreaとそのラベルが残りの領域を占めます。

データ・モデル

データ・バインディング・ダイアログを使用して、通常は行セットに基づくデータ・コントロールに単純なグラフ・タグをバインドします(詳細は、データ・バインディングに関するドキュメントを参照)。グラフのデータを提供する一般的な方法としては、tabularData属性を使用してグリッドを作成する方法もあります。この方法では、バッキングBeanまたはマネージドBeanを使用する必要があります。

グラフを描画するには、数値データ・ポイントの単純グリッドが必要です。このグリッドの行ラベルと列ラベルは、グラフ内のコンポーネントを識別するために使用されます。デフォルトでは、行は系列として表示され、列はグループとして表示されます。データは散布図または極グラフ上の位置によって表されるため、これらのグラフのタイプでは、1グループにつき2つの列が必要です。これらのグラフは、多数のデータ・ポイント間の一般的な関係を表示する場合に特に役立ちます。たとえば、特定の製品の売上と利益の値の間の関係を調べる場合は、散布図を使用します。

系列

散布図では、グリッドの行は通常は系列として表示されます。グラフの凡例では、グラフの各系列が色やその他の該当する属性を示すラベル付きの記号で識別されます。データ・マーカーの色を変更するには、<dvt:series>タグのセットを<dvt:seriesSet>タグ内で使用します。<dvt:seriesSet>タグには、すべての系列のデフォルト属性を変更する属性が含まれています。<dvt:seriesSet>タグには、個々の系列の属性をオーバーライドする<dvt:series>タグも含まれています。一般に使用される系列属性は、color、assignedToY2(二重Yグラフの軸割当ての変更)、markerShapeなどです。

次の例は、<dvt:seriesSet>タグを使用してすべての系列のデフォルトの形状が定義されている分散図を示しています。<dvt:series>子タグにより、グラフの最初の系列におけるこの形状がオーバーライドされます。

                <dvt:scatterGraph id="scatterGraph1" subType="SCATTER">
                  <dvt:seriesSet defaultMarkerShape="MS_CIRCLE"">
                    <dvt:series index="0" markerShape="MS_PLUS"/>
                  </dvt:seriesSet>
                </dvt:scatterGraph>
        

系列の強調表示

カーソルがデータ・マーカーまたは系列固有の汎用コンポーネント上に移動したときに強調表示動作を有効にするには、グラフのseriesRolloverBehavior属性を使用します。

MarkerText

markerTextタグでは、マーカー・テキストを表示するかどうか、および棒を基準にしたその表示位置を定義します。テキストの位置を指定するには、markerTextPlace属性を使用します。

タイトル

タイトルサブタイトルは、存在する場合はデフォルトでグラフ最上部に並べて表示されます。このデフォルト設定を変更するには、グラフのcustomLayout属性を使用します。脚注が存在する場合は、グラフ最下部に表示されます。

凡例

凡例には、各系列のマーカーおよび関連する色が表示されます。また、凡例タイトルも表示され、表示する参照オブジェクトがあればリストされます。凡例は、4つの異なる場所(左右上下)のいずれかに配置できます。凡例をグラフの端にアタッチするには、alongGraphEdge属性を使用します。凡例はrendered属性を使用して削除できます。

PlotAreaと軸

分散図および極グラフでは、plotArea内にデータが描画されます。plotAreaでは、軸とデータ・マーカーが統合されます。分散図および極グラフではどちらもデータ軸のみが表示されます。分散図の横軸はx1Axis、縦軸はy1Axisです。また、通常、二重Yグラフにはy2Axisも表示されます。極グラフとは、y1Axisが半径に沿って表示され、グリッドの最も外側の円がx1Axisとなる円形の分散図のことです。各軸にはティック・ラベルが関連付けられています。たとえば、y1Axisy1TickLabelに関連付けられています。詳細は、関連するコンポーネント・タグを参照してください。

グラフのサイズ

デフォルトのグラフ・サイズは高さ300ピクセル、幅400ピクセルです。これを変更するには、inlineStyle属性を使用します。たとえば、グラフ・サイズを高さ350ピクセル、幅500ピクセルに変更するには、inlineStyle="width:500px; height:350px;"に設定します。幅と高さはパーセントで指定することもできます。グラフを明示的にサイズ指定されたコンテナやレイアウトを管理するコンテナに追加する際にのみ、高さにパーセントを使用してください。それ以外の場合にパーセントを使用すると、ブラウザごとにグラフの動作が異なることになります。コンテナ・サイズに基づいてグラフをサイズ変更するには、dynamicResize属性を使用します。

アニメーション

アニメーションは複数のグラフ・タイプでサポートされています。初期レンダリング中には、animationOnDisplay属性を使用してグラフをアニメートします。animationOnDataChange属性を使用して、データ変更時にグラフをアニメートすることもできます。アニメーション期間を指定するには、animationDuration属性を使用します。データ値の増減を示す色は、それぞれanimationUpColor属性とanimationDownColor属性で指定します。

アラート

エラーや警告など、個別の記号で強調表示する必要のあるその他のデータ・ポイントをグラフで定義するには、<dvt:alert>タグを使用します。すべての<dvt:alert>タグを1つの<dvt:alertSet>タグでラップします。

注釈

特定のデータ・ポイントに関する注釈を提供するには、<dvt:annotation>タグを使用します。1つのデータ・ポイントに対して複数の注釈を定義できます。すべての<dvt:annotation>タグを1つの<dvt:annotatinSet>タグでラップします。

ReferenceObject

参照線または参照領域を作成するには、<dvt:referenceObject>タグを使用します。参照オブジェクトは、どのデータ軸や系列にも関連付けることができます。複数の参照オブジェクトを1つの系列または軸に関連付けることができます。referenceObjectをデータ・マーカーの手前に表示するか奥に表示するかを指定するには、location属性を使用します。referenceObjectを表示する時期を指定するには、グラフのreferenceObjectDisplay属性を使用します。値RO_AUTOMATICを指定すると、referenceObjectが定義されているコンポーネントの上にマウスを移動したときにのみ表示されます。すべての<dvt:referenceObject>タグを1つの<dvt:referenceObjectSet>タグでラップします。

相互作用力

個々のグラフ・コンポーネントの相互作用力を指定するには、shapeAttributesタグを使用します。この機能を使用するには、バッキングBeanまたはマネージドBeanが必要です。

次の例は、clickListenerを使用してデータ値を表示するデータ・マーカーを示しています。

                <dvt:scatterGraph >
                 <dvt:shapeAttributesSet>
                  <dvt:shapeAttributes component="GRAPH_DATAMARKER" clickable="true" clickListener="#{clickListener.processClick}"/>
                 </dvt:shapeAttributesSet>
                </dvt:scatterGraph>
        

バッキングBeanのprocessCilckメソッドは次のようになります。

        public void processClick(ClickEvent event) {   
                ComponentHandle handle = event.getComponentHandle();
                if (handle instanceof DataComponentHandle) {
                        DataComponentHandle dhandle = (DataComponentHandle)handle;
                        System.out.println("Data value: " + dhandle.getValue(DataComponentHandle.UNFORMATTED_VALUE).toString());
                }
        }
        

すべての<dvt:shapeAttributes>タグを1つの<dvt:shapeAttributesSet>タグでラップします。

ツールチップ

ツールチップは、データ・マーカーの識別情報や詳細情報を表示する際に役立ちます。また、スペースが足りないためにmarkerTextを表示できない小さいグラフにも便利です。ツールチップのコンテンツをカスタマイズするには、markerTooltipType、seriesTooltipLabelTypeおよびgroupTooltipLabelTypeの各属性を使用します。タイトルサブタイトル脚注legendTextおよび注釈などのテキストが切り捨てられている場合は、そのコンポーネントのツールチップがグラフに自動的に表示されます。この動作を変更するためのオプションはありません。

ズームとスクロール

大きすぎたり複雑すぎてグラフに割り当てられたエリアにうまく収まらないデータ・セットをエンド・ユーザーがズーム・インしてスクロールできるようにするには、zoomDirection属性を使用します。ズームとスクロールは、横軸または縦軸(あるいはその両方)に対して有効にできます。scrollbarPresenceGroups属性は、グループ軸にスクロール・バーが表示される時期を制御します(棒グラフの横軸など)。scrollbarPresenceX1、scrollbarPresenceY1およびscrollbarPresenceY2属性は、各種データ軸のスクロール・バーの表示を制御します。

フォント

<dvt:graphFont>タグは、フォントの書式設定に使用します。テキストの色、スタイル、サイズおよびフォント名は、このタグを使用して指定できます。このタグは、グラフのすべてのテキスト・コンポーネント・タグの子タグとして使用されます。すべてのテキスト・コンポーネント・タグには、水平方向と垂直方向の位置合せ、テキスト文字列、およびテキストをレンダリングするかどうかなど、その他の書式設定属性があります。

SpecialEffects

多数のグラフ・サブコンポーネントのグラデーション効果を指定するには、<dvt:specialEffects>タグを使用します。このタグはコンポーネント・タグの子タグとして定義する必要があり、テキスト・コンポーネントには使用できません。seriesEffect属性を設定すると、特殊効果の設定が常にオーバーライドされることに注意してください。

他のタグとの関係

<dvt:scatterGraph>タグの子として使用できるタグは次のとおりです。

<alertSet><annotationSet><background><graphFootnote><graphPlotArea><graphSubtitle><graphTitle><legendArea><legendText><legendTitle><markerText><referenceObjectSet><seriesSet ><shapeAttributesSet><x1Axis><x1MajorTick><x1TickLabel><x1Title><y1Axis><y1BaseLine><y1MajorTick><y1Title><y1TickLabel><y2Axis><y2BaseLine><y2MajorTick><y2TickLabel><y2Title>

イベント

フェーズ 説明
oracle.adf.view.faces.bi.event.ClickEvent リクエスト値の適用

コンポーネントでクリック・アクションが発生したことを示すイベント。ClickEventは、グラフにClickListenerを追加することで有効になります。

org.apache.myfaces.trinidad.event.AttributeChangeEvent アプリケーションの起動、
リクエスト値の適用
属性変更を記述するために配信されるイベント。属性変更イベントは、プロパティに対するプログラム的な変更については配信されません。アプリケーションの特定のリクエストなしにレンダラによってプロパティが変更される場合にのみ配信されます。属性変更イベントの例には、クライアント側のサイズ変更をサポートしていた列の幅などがあります。

属性

名前 ELのサポート 説明
advancedPropertiesXML String あり

scatterGraphタグで公開されていないグラフ・プロパティの設定を含むXMLファイルへのパスを指定します。
たとえば、/myfiles/graph.xmlのように指定します。
Webアプリケーションのルートからのパスを指定する必要があります。

attributeChangeListener javax.el.MethodExpression ELのみ 属性変更リスナーへのメソッド・リファレンス。属性変更イベントは、プロパティに対するプログラム的な変更については配信されません。アプリケーションの特定のリクエストなしにレンダラによってプロパティが変更される場合にのみ配信されます。属性変更イベントの例には、クライアント側のサイズ変更をサポートしていた列の幅などがあります。
binding String ELのみ

バッキングBeanからのUIGraphの特定のインスタンスを保存するためのバインディング参照を指定します。この属性は、バッキングBean内のコードにアクセスする場合のみ設定してください。たとえば、SampleGraphクラス内のグラフ・コンポーネントを参照するには、binding="#{sampleGraph.graph}"というコードを使用します。

clickAction String あり グラフのナビゲーション処理を実行するバッキングBeanメソッドを参照して結果文字列を戻します。または静的な結果文字列を指定できます。JSF NavigationHandlerは、アプリケーション構成リソース・ファイル内のナビゲーション・ルールに結果文字列を一致させることにより、次に表示するページを選択します。ナビゲーション・ルールはアプリケーションによって書き込まれます。
clickListener String あり
contentDelivery String あり コンテンツをページのロード時にフェッチするか、ページのロード後にフェッチするかを指定します。有効な値はlazy(デフォルト)またはimmediateです。
customLayout String あり

グラフによってそのコンポーネントの配置とサイズ設定が自動的に行われる場合のカスタム・レイアウト情報を指定します。有効な値は次のとおりです。

  • CL_NONE: その他のカスタム・レイアウト属性値を使用しません。
  • CL_TITLES_SIDEBYSIDE: タイトルの下にサブタイトルを表示するのではなく、タイトルとサブタイトルを横に並べて表示します。
  • CL_TITLE_SEPARATOR: タイトルの下にタイトル・セパレータを表示します。
customizationId String あり この属性は推奨されていません。永続的なカスタマイズを適用するには、id属性を使用する必要があります。この属性は、次のリリースでは削除されます。
drillingEnabled boolean あり ドリル操作を有効にするかどうかを指定します。
dynamicResize String あり コンテナのサイズに基づいてコンポーネントのサイズを変更するかどうかを指定します。有効な値はFIXED_SIZE(デフォルト)またはDYNAMIC_RESIZEです。
flashDefaultFontLoading String あり デフォルト・フォントを中間層からFLASHにロードするかどうかを指定します。有効な値はFLASH_DEFAULT_FONT_LOADING_ALLまたはFLASH_DEFAULT_FONT_LOADING_NONEです。デフォルト値はFLASH_DEFAULT_FONT_LOADING_ALLです。
id String なし コンポーネントの識別子。識別子は、HTMLで許可される構文のサブセットに準拠している必要があります。
  • 長さゼロの文字列は指定しないでください。
  • 最初の文字は、ASCII文字(A-Za-z)またはアンダースコア(_)にする必要があります。
  • 後続の文字は、ASCII文字または数字(A-Za-z0-9)、アンダースコア(_)またはダッシュ(-)にする必要があります。
imageFormat String あり

グラフ・イメージの形式。有効な値は次のとおりです。

  • PNG: PNGイメージ形式。
  • FLASH: (デフォルト)FLASHイメージ形式。
  • PNG_STAMPED: JavaScriptを含まないPNGイメージ。スタンプ操作を介してADF表のセルでグラフを使用するときに使用する必要があります。
  • AUTO: サポートされているFlash Playerがクライアント上で見つかった場合にFlashを生成します。
imageHeight int あり グラフ・イメージの高さをピクセル単位で指定します。
imageWidth int あり グラフ・イメージの幅をピクセル単位で指定します。
inlineStyle String あり コンポーネントの外側の要素(そのコンポーネントを囲んでいるdiv)のスタイル
partialSubmit boolean あり

ページの部分送信を通じてアクションを実行することを許可するかどうかを指定します。有効な値は次のとおりです。

  • true: (デフォルト)ページの部分送信を許可します。
  • false: ページの部分送信を許可しません。
partialTriggers String あり 部分更新をトリガーする必要があるコンポーネントのID。このコンポーネントはトリガー・コンポーネントをリスニングします。なんらかの方法で更新を発生させるイベントがいずれかのトリガー・コンポーネントで受信されると、このコンポーネントも更新を要求します。
rendered boolean あり コンポーネントをレンダリングするかどうかを指定します。
seriesEffect String あり

グラフに使用する系列効果を指定します。有効な値は次のとおりです。

  • SE_NONE: グラフに系列効果を使用しません。この値を設定すると、マーカーはグラデーションなしで表示され、graphicAntialiasing属性はfalseに設定されます。
  • SE_GRADIENT: 洗練された外観にするために特別なグラデーションをデータ・マーカーに設定し、graphicAntialiasing属性をtrueに設定します。
  • SE_AUTO_GRADIENT: (デフォルト)データセットが大きい場合を除いて、SE_GRADIENTと同様に動作します。グラフに大きなデータセットが表示されている場合は、データ・マーカーにグラデーションが表示されないため、パフォーマンスが向上します。
seriesRolloverBehavior String あり

系列内の1つの棒をマウス・ポインタがロールオーバーしたときの動作を指定します。有効な値は次のとおりです。

  • RB_NONE: (デフォルト)系列のロールオーバー動作は有効になりません。
  • RB_HIGHLIGHT: ロールオーバーの発生時に、系列内のすべての棒を強調表示します。
  • RB_DIM: ロールオーバーの発生時に、系列内のすべての棒をグレー表示します。
  • RB_HIGHLIGHT | RB_DIM: ロールオーバーの発生時に、系列内のすべての棒をグレー表示と強調表示の両方で表示します。
shortDesc String あり グラフの短い説明を指定します。スクリーン・リーダー・モードで特に役立ちます。
style String あり

指定されたXMLファイルに基づいてグラフにスタイルを適用します。有効な値は、標準グラフ・スタイルの名前、またはこのグラフのスタイルとして設定するカスタムXMLファイルへのパスです。

事前定義済のグラフ・スタイルは次のとおりです。

  • 4月
  • オータム
  • モノクロ
  • 彗星
  • 紙吹雪
  • デフォルト
  • アース
  • エグゼキュティブ
  • 会計
  • ガラス
  • 航海
  • 予測
  • レガッタ
  • 南西部
  • 透明

カスタム・スタイルを指定するには、該当するxmlファイルへのパス全体を入力します。たとえば/text/myStyle.xmlのように指定します。

styleClass String あり このコンポーネントに対して使用するCSSスタイル・クラスを設定します。幅および高さはinlineStyleプロパティを使用して設定する必要があることに注意してください。
subType String あり

グラフのタイプを指定します。有効な値は次のとおりです。

  • SCATTER: 散布図
  • SCATTER_2Y: 二重Y散布図
  • POLAR: 極グラフ
tabularData java.util.List あり

グラフのグリッドを自動的に作成してデータを移入するために使用するデータのリストを指定します。このリストは、グラフに渡すデータ値ごとに、3つのメンバーからなるオブジェクト配列で構成されます。それぞれの配列のメンバーは、次のように編成されている必要があります。

  • 1番目のメンバー(索引0)は、グリッドにおけるデータ値の列ラベルに相当します。通常はString型で指定します。グラフに時間軸がある場合は、JavaのDate型で指定する必要があります。通常、列ラベルは、グラフ内のグループを示します。
  • 2番目のメンバー(索引1)は、グリッドにおけるデータ値の行ラベルに相当します。通常はString型で指定します。行ラベルはグラフの系列ラベルとして(通常は凡例内に)表示されます。
  • 3番目のメンバー(索引2)はデータ値であり、通常はDouble型で指定します。
title String あり タイトルのテキストを指定します。
value String あり グラフのデータ・モデルを指定します。これは、oracle.adf.view.faces.bi.model.DataModelまたはoracle.adf.view.faces.bi.model.GraphDataModelのインスタンスである必要があります。
visualEffects String あり

適用するvisualEffectのタイプを1つまたは複数指定します。有効な値は次のとおりです。

  • NONE: ビジュアル効果を適用しません。
  • AUTO(デフォルト): グラフまたはゲージのタイプに基づいて、ビジュアル効果を自動的に適用します。
x1AxisTitle String あり 横軸のタイトルのテキストを指定する場合に使用します。
y1AxisTitle String あり 縦軸のタイトルのテキストを指定する場合に使用します。