<dvt:funnelGraph>

dvt:funnelGraph funnelGraph funnel graph

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

概要

<dvt:funnelGraph>タグは、ADFデータ視覚化棒グラフを作成する場合に使用します。ファンネル・グラフは、プロセス内の各ステップに関連するデータを視覚的に表現したものです。ステップは、水平方向の円錐形セクションを縦にスライスしたものとして表示されます。特定のステップまたは区分の実際の値がその区分のノルマに近づくと、その区分が塗りつぶされます。ファンネルは目標値、実績値およびレベルを色で表す3次元のチャートをレンダリングします。

グラフのレイアウトには、4つの主要コンポーネント(タイトルサブタイトル脚注およびファンネル・フレーム)が入ります。ファンネル・フレームはデータを描画し、常にレンダリングされますが、他の3つのコンポーネントはオプションで、グラフ内の様々な場所に配置できます。グラフ全体に割り当てられたエリアの領域は、タイトルがあれば最初にタイトルに割り当てられます。タイトルサブタイトルは、デフォルトでグラフ最上部に並べて表示され、脚注はグラフ最下部に表示されます。残りの領域にファンネル・フレームとそのラベルが描画されます。

データ・モデル

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

グラフを描画するには、数値データ・ポイントの単純グリッドが必要です。このグリッドの行ラベルと列ラベルは、グラフ内のコンポーネントを識別するために使用されます。ファンネル・グラフには通常、2つのデータ行が必要です。最初の行は実際のデータ値を提供し、2行目はターゲット値を提供します。ファンネル・グラフ凡例には、しきい値が表示されます。

SeriesEffect

ファンネル区分に事前定義済のグラデーション効果を追加するには、グラフのseriesEffect属性を使用します。

タイトル

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

凡例

凡例には、しきい値が表示されます。また、凡例タイトルがあれば表示されます。凡例は、4つの異なる場所(左右上下)のいずれかに配置できます。凡例をグラフの端にアタッチするには、alongGraphEdge属性を使用します。凡例はrendered属性を使用して削除できます。

ファンネル・フレーム

ファンネル・グラフでは、ファンネル・フレーム内にデータが描画されます。funnelFrameでは、区分ラベルo1TickLabel、および区分を描画する水平方向の円錐形フレームが統合されます。

グラフのサイズ

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

相互作用力

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

次の例は、clickListenerを使用してデータ値を表示するファンネル・グラフの区分ラベルを示しています。

                <dvt:funnelGraph id="graph1" subType="FUNNEL">
                 <dvt:shapeAttributesSet>
                  <dvt:shapeAttributes component="GRAPH_SLICELABEL" clickable="true" clickListener="#{clickListener.processClick}"/>
                 </dvt:shapeAttributesSet>
                </dvt:funnelGraph>
        

バッキング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>タグでラップします。

ツールチップ

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

フォント

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

SpecialEffects

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

他のタグとの関係

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

<activeDataProperties><background><graphFootnote><graphPlotArea><graphSubtitle><graphTitle><legendArea><legendText><legendTitle><o1TickLabel><shapeAttributesSet><sliceLabel>

イベント

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

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

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

属性

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

funnelGraphタグで公開されていないグラフ・プロパティの設定を含む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 あり

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

  • ファンネル - ファンネル・チャート
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(デフォルト): グラフまたはゲージのタイプに基づいて、ビジュアル効果を自動的に適用します。