Oracle Fusion Middleware Data Visualization Tools Tag Reference for Oracle ADF Faces
12c (12.1.2)

E23187-01

<dvt:sunburst>

dvt:sunburst sunburst sunburst

UIComponent class: oracle.adf.view.faces.bi.component.sunburst.UISunburst
Component type: oracle.dss.adf.sunburst.Sunburst

Overview

Sunbursts are used to display hierarchical data across two dimensions, represented by the size and color of the sunburst nodes. The sunburst displays multiple levels of its hierarchy at once, with each ring corresponding to a level of the hierarchy. To emphasize leaf node data, consider using a treemap instead.

Sunburst Nodes

The most common child tag of the sunburst is the sunburstNode. This tag is stamped for each row of the tree model, and defines the size and color of each node in the component. To vary the stamp, an af:switcher can be used. If multiple stamps are defined, the first rendered stamp is used.

Animations

Multiple types of animations are supported. Use the animationOnDisplay attribute to control the initial animation and the animationOnDataChange attribute to control subsequent animations. For sunburst, animationOnDisplay="fan" and animationOnDataChange="auto" are recommended.

Attribute Groups

The sunburstNode supports attributeGroups for color and pattern customization. Use of attribute groups is recommended, as they provide the information necessary to create a legend.

Legend

The sunburst legend displays the data dimensions for the size and color of the nodes, as well as color and pattern information from the attribute groups. Use the sizeLabel and colorLabel attributes to specify the size and color dimensions.

Drilling

The sunburst supports drill replace and drill insert. Use the drilling attribute on the sunburstNode to enable drilling.

Drill replace allows a user to change the root node of the component. It is extremely useful for navigating deep hierarchies.

Drill insert allows a user to expand or collapse the children of a node. It allows a user to look deeper into a hierarchy while maintaining context, or to hide details that are not relevant to their current task.

Context Menus

Context menus can be defined by using any of the context menu facets that are defined on the component. The "bodyContextMenu" facet specifies a context menu that is displayed on any non-selectable object within the component. The "contextMenu" facet specifies a context menu that is displayed on any selectable object. The "multiSelectContextMenu" facet specifies a context menu that is displayed when multiple objects are selected. Each facet supports only a single child component. Selection must be enabled and supported for the specific graph type in order for an object to be considered selectable. Context Menus are currently only supported in Flash and HTML5.

When using the Flash rendering format, the context menu contents are currently displayed using the Flash Player's context menu due to technical limitations. This imposes several limitations defined by the Flash Player:

Additionally, since Flash's request for context menu items is a synchronous call, so a server request to evaluate EL is not possible when the context menu is invoked. To provide context menus that vary by selected object, the menus will be pre-fetched if the context menu popup uses contentDelivery="lazyUncached". For context menus that may vary by state, this means that any EL expressions within the menu definition will be called repeatedly at render time, with different selection and currency states. When using these context menus that are pre-fetched, the application must be aware of the following:

Popups

The sunburstNode supports af:showPopupBehavior as a child tag. Only the "click" and "mouseHover" trigger types are supported.

Drag and Drop

Drag and drop is supported using the af:dragSource and af:dropTarget child tags. The payload of the sunburst's af:dragSource is a RowKeySet.

Screen Shot(s)


Sunburst

Events

Type Phases Description
org.apache.myfaces.trinidad.event.AttributeChangeEvent Invoke Application,
Apply Request Values
Event delivered to describe an attribute change. Attribute change events are not delivered for any programmatic change to a property. They are only delivered when a renderer changes a property without the application's specific request. An example of an attribute change event might include the width of a column that supported client-side resizing.

Supported Facets

Name Description
bodyContextMenu popup component containing the context menu that will be shown on right click on any non-selectable object within the component. The af:popup must contain an af:menu to display the context menu. This facet supports only a single child component.
contextMenu popup component containing the context menu that will be shown on right click of any selectable data object within the component. The af:popup must contain an af:menu to display the context menu. This facet supports only a single child component.
multiSelectContextMenu popup component containing the context menu that will be shown on right click when multiple data objects are selected. The af:popup must contain an af:menu to display the context menu. This facet supports only a single child component.

Attributes

Name Type Supports EL? Description
animationDuration int Yes Default Value: 500

Specifies the animation duration in milliseconds. The default value is 500. For data change animations with multiple stages, this attribute defines the duration of each stage. For example, if an animation contains two stages, the total duration will be two times this attribute's value.
animationOnDataChange String Yes Valid Values: none, activeData, auto, alphaFade, flipLeft, flipRight, slideToLeft, slideToRight, transitionToLeft, transitionToRight, zoom
Default Value: activeData

Specifies the type of animation to apply on data change. Valid values for animating data objects are:
  • none - Does not apply data change animation effects
  • activeData - (Default) Applies animation for Active Data Service (ADS) data change events.
  • auto - Applies animation for Partial Page Refresh and ADS events.
Animation can also be performed on the entire component, allowing for effects such as slideshow transitions. These animations will be performed on any Partial Page Refresh event, and valid values are:
  • alphaFade
  • flipLeft
  • flipRight
  • slideToLeft
  • slideToRight
  • transitionToLeft
  • transitionToRight
  • zoom
animationOnDisplay String Yes Valid Values: none, alphaFade, fan, zoom
Default Value: none

Specifies the type of animation to apply when the component is initially displayed. Valid values are:
  • none - (Default) Does not apply any initial rendering effect
  • alphaFade
  • fan
  • zoom
attributeChangeListener javax.el.MethodExpression Only EL a method reference to an attribute change listener. Attribute change events are not delivered for any programmatic change to a property. They are only delivered when a renderer changes a property without the application's specific request. An example of an attribute change events might include the width of a column that supported client-side resizing.
binding oracle.adf.view.faces.bi.component.sunburst.UISunburst Only EL

Specifies a binding reference to store a specific instance of UISunburst from a backing bean. Set this attribute only to access code in a backing bean. For example, to reference a sunburst component in the sample managed bean, use the following code: binding="#{sample.sunburst}"

colorLabel String Yes Specifies the label describing the color metric of the component. This label will be used in the legend.
contentDelivery String Yes Valid Values: whenAvailable, lazy, immediate
Default Value: whenAvailable

Specifies whether to fetch content with page load or after page load. Valid values are whenAvailable (default), lazy, and immediate.
disclosedRowKeys org.apache.myfaces.trinidad.model.RowKeySet Yes The set of disclosed rows for this component. Each entry in the set is a rowKey.
displayLevelsChildren int Yes Default Value: 2

The number of child levels to display during initial render. This property is 0-based. A value of 0 means that no child levels below the root will be shown; the root itself will be shown. The default value is 2, which means that the root and the first two levels of children will be shown.
dontPersist String[] Yes List of persistent attributes that are restricted from persisting to a registered "Persistent Change Manager". Persistent attributes would still persist to a session.
drillListener javax.el.MethodExpression Only EL a method reference to a drill listener, the method is invoked when a drill replace is performed.
emptyText String Yes The text of the component when empty.
id String Yes Specifies the identifier for the component
inlineStyle String Yes Style of the outer element (enclosing div) of the component
legendSource String Yes Specifies the id of the UIAttributeGroups used for display in the legend. This UIAttributeGroups component must be a child of a node within this component.
nodeSelection String Yes Valid Values: none, single, multiple
Default Value: multiple

Specifies the selection mode. Valid values are:

  • "none" - no nodes can be selected
  • "single" - a single node can be selected
  • "multiple" - (default) multiple nodes can be selected
otherColor String Yes A reference to a method that takes the RowKeySet of all nodes contained within the current "Other" node and returns a String for the color of the "Other" node.
otherPattern String Yes A reference to a method that takes the RowKeySet of all nodes contained within the current "Other" node and returns a String for the pattern of the "Other" node.
otherThreshold Number Yes Default Value: 0

Specifies the percentage of the parent under which a node would be aggregated into an "Other" node. Valid values range from 0 (default) to 1. For example, a value of 0.1 would cause all nodes which are less than 10% of their parent to be aggregated into the "Other" node.
partialTriggers String[] Yes The IDs of the components that should trigger a partial update. This component will listen on the trigger components. If one of the trigger components receives an event that will cause it to update in some way, this component will request to be updated too.
persist String[] Yes List of persistent attributes that are persisting to a registered "Persistent Change Manager". Persistent attributes, by default, always persist to a session.
rendered boolean Yes Default Value: true

Specifies whether the component is rendered.
rootRowKey Object Yes Specifies the row key of the root of the component, if different than the root of the model.
rotation String Yes Valid Values: on, off
Default Value: on

Specifies whether client side rotation is enabled. Valid values are "on" (default) and "off".
selectedRowKeys org.apache.myfaces.trinidad.model.RowKeySet Yes The set of selected rows for this component. Each entry in the set is a rowKey.
selectionListener javax.el.MethodExpression Only EL a method reference to a selection listener, the method is invoked when the selected nodes are changed.

sizeLabel String Yes Specifies the label describing the size metric of the component. This label will be used in the legend.
sorting String Yes Valid Values: on, off
Default Value: off

Specifies whether whether the nodes are sorted by size. Valid values are "on" and "off" (default). When sorting is enabled, nodes that have the same parent are sorted in order of descending size.
startAngle Number Yes Default Value: 90

Specifies the starting angle of the sunburst. Valid values are numbers between 0 and 360, with a default of 90.
styleClass String Yes Sets a CSS style class to use for this component.
summary String Yes A summary of the component's purpose and structure for user agents rendering to non-visual media (e.g. screen readers).
value String Yes The data model for the sunburst - can be an instance of javax.faces.TreeModel
var String No Name of the EL variable used to reference each element of this collection. Once this component has completed rendering, this variable is removed (or reverted back to its previous value).
varStatus String No Name of the EL variable used to reference the varStatus information. Once this component has completed rendering, this variable is removed (or reverted back to its previous value). The VarStatus provides contextual information about the state of the component to EL expressions. For components that iterate, varStatus also provides loop counter information. Please see the this component's documentation for the specific properties on the varStatus. The common properties on varStatus include:
  • "model" - returns the CollectionModel for this component
  • "index" - returns the zero based row index