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

E41655-01

<dvt:marker>

dvt:marker marker marker

UIComponent class: oracle.adf.view.faces.bi.component.common.UIMarker
Component type: oracle.dss.adf.common.Marker

A marker is used to stamp out built-in shapes, custom shapes, or images associated with data. Markers can be customized with different stylistic attributes such as colors and patterns based on their underlying data.

Marker Shapes

Markers support a predefined set of shapes ("circle", "square", etc) that can be specified with the shape attribute on the marker tag. These built-in marker shapes can be styled by changing border and fill styles.

A custom shape can also be specified using the shapePath attribute which requires the path of an SVG image file. The SVG image will be drawn in place of a built-in marker shape and have the same selection effects as a built-in shape, but will use the colors and styles from the SVG image. Results look best when using simple SVG images with few or no gradients. The shape attribute will be ignored if shapePath is used.

Marker shapes can also be specified via skinning. With the skinning approach, predefined marker types can be overwritten, and the paths for custom marker shapes can also be defined without the shapePath attribute. In this case, the "shape" attribute in dvt:marker is used for defining built-in or custom shapes.

A predefined shape will be overwritten if a global or component-specific selector for that shape is specified:

       <dvt:marker id="m1" shape="circle"/>
       
       af|dvt-thematicMap::shape-circle{
         -tr-path: url(/resources/newCircle.svg);
       }
       

In order to specify a custom shape in the shape attribute, a "custom" prefix is required. For example if the shape is customFoo then the skin file should have a .AFDVTShapeCustomFoo:alias selector defined or the Thematic Map specific af|dvt-thematicMap::shape-customFoo defined which has the -tr-path property pointing to the svg file.

       <dvt:marker id="m1" shape="customFoo"/>
       
       af|dvt-thematicMap::shape-customFoo{
         -tr-path: url(/resources/newShape.svg);
       }
       

Marker Images

Markers can also support raster images by using the source attribute which requires the path of an image file. When marker is a child tag of a component that supports selection, use the sourceHover, sourceSelected, and sourceHoverSelected attributes to specify images to display for these selection states. The source attributes can also take SVG images, but rendering is platform depedent and will only display if the rendering platform supports that image format. For example, if rendering in Flash, SVG images will not display. When using the source attributes, the shape and shapePath attributes are ignored.

Label Customization

Label text and styles can be specified on the marker tag. The value attribute is used to specify the text of the label, and the labelDisplay, lableStyle, and labelPosition attributes can be used to customize the appearance and location of these labels. When labelDisplay="on" then the provided label value and labelStyle will be displayed at the given labelPosition relative to the marker. If a marker is displayed on a region (i.e. you have a marker within an areaDataLayer), and that marker has a label, then the label associated with the basemap region will NOT be shown.

Number Formatting

The Thematic Map supports formatting of the marker labels specified in the value attribute. This can be done either by adding an <af:convertNumber> as a child of <dvt:marker> or by specifying a converter via EL directly on the <dvt:marker> tag. If the value is numeric, then the properties of the given converter will be used to format the number appropriately. For example:

       <!--This uses a converter from the backing bean to convert the value-->
       <dvt:marker id="m1" labelDisplay="on" value="#{mapBean.value}" converter="#{mapBean.myConverter}"/>

       <!--This uses the child convertNumber tag to convert the value-->
       <dvt:marker id="m2" labelDisplay="on" value="#{mapBean.value}" >
         <af:convertNumber id="cn1" type="currency"/>
       </dvt:marker>
       

If both a converter and a child af:convertNumber tag are specified, then the properties of the child tag take precedence.

Drag and Drop

A marker can be used as a drag source. To make a marker a drag source, the application developer simply needs to add an <af:dragSource> as its child.
Example:

<dvt:marker fillColor="#{row.color}" scaleX="#{row.size/2}" 
               scaleY="#{row.size/2}" shape="circle" 
               id="m1">       
  <af:dragSource actions="COPY" discriminant="DnDDemoModel"/>             
</dvt:marker>  
       

Attribute Groups

The <dvt:attributeGroups> tag can be used as a child of dvt:marker. Instead of specifying fillColor, pattern, opacity, shape, scaleX, or scaleY directly on the marker tag, developers can use attributeGroups with type = "color", "pattern", "opacity", "shape", "scaleX", or "scaleY" to get these attributes automatically generated based on categorical bucketing of the data set. If any of these attributes are specified both in the marker tag and within the attributeGroups type, then the style generated by the attributeGroups will take precedence.

Relationship with other tags

The <dvt:marker> tag can have the following children:

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.

Attributes

Name Type Supports EL? Description
action javax.el.MethodExpression Yes A reference to an action method sent by the component, or the static outcome of an action.
actionListener javax.faces.el.MethodBinding Only EL A method reference to an action listener
attributeChangeListener javax.el.MethodExpression Only EL A method reference to an attribute change listener
binding String Only EL Binding reference to store the UIMarker component
borderColor String Yes Default Value: #000000

Specifies the border color of this marker. Valid values are RGB hexadecimal.
borderStyle String Yes Valid Values: none, solid
Default Value: none

Specifies the border style of this marker. Valid values are:
  • "none" - (default) No border will be displayed
  • "solid" - A solid border will be displayed
borderWidth double Yes Default Value: 1

Specifies the border width of this marker.
converter javax.faces.convert.Converter Yes A converter object
destination String Yes The URI this component references
fillColor String Yes Default Value: #000000

Specifies the fill color of this marker. Valid values are RGB hexadecimal.
fillPattern String Yes Specifies the built-in pattern used to fill this marker. Valid values are:
  • "smallDiagonalLeft"
  • "smallChecker"
  • "smallDiagonalRight"
  • "smallTriangle"
  • "smallCrosshatch"
  • "smallDiamond"
  • "largeDiagonalLeft"
  • "largeChecker"
  • "largeDiagonalRight"
  • "largeTriangle"
  • "largeCrosshatch"
  • "largeDiamond"
The pattern is drawn with a white background, and the foreground color is taken from the fillColor attribute.
gradientEffect String Yes Valid Values: auto, none
Default Value: auto

Determines the gradient effect that should be used for this marker. Valid values are:
  • "auto" - (default) Sets a gradient on the marker
  • "none" - Do not use gradients on the marker. This causes markers to appear flat.
height int Yes Specifies the height of this marker.
id String No the identifier for the component
labelDisplay String Yes Valid Values: on, off
Default Value: off

Determines how labels associated with this marker should be displayed. Valid values are:
  • "on" - Display the label provided in the value attribute
  • "off" - (default) Do not display the label provided in the value attribute
labelPosition String Yes Valid Values: top, center, bottom
Default Value: center

Determines the position relative to the marker that the specified value label should be displayed. Valid values are:
  • "top" - Display the label on top of the marker
  • "bottom" - Display the label below the marker
  • "center" - (default) Display the label on the center of the marker
labelStyle String Yes The font style for labels associated with this marker. Accepts font-related CSS attributes like font-name, font-weight, font-size, color, etc.
opacity double Yes Specifies the opacity of the fill color of the marker. Valid values are from 0.0 - 1.0, where 0.0 is transparent and 1.0 is opaque.
rendered boolean Yes Default Value: true

Specifies whether the component is rendered. The default value is true.
rotation double Yes The marker rotation in clockwise degrees around the center of the image.
scaleX double Yes The horizontal scale factor for this marker. This determines how much to scale the marker from its default size.
scaleY double Yes The vertical scale factor for this marker. This determines how much to scale the marker from its default size.
shape String Yes Specifies the shape of this marker. The predefined shapes are:
  • "circle" (default)
  • "square"
  • "roundedRectangle"
  • "plus"
  • "diamond"
  • "triangleUp"
  • "triangleDown"
  • "human"
If the shape starts with "custom" prefix, then the shape will be defined by the svg file specified in the skin file. For example if the shape is customFoo then the skin file should have a .AFDVTShapeCustomFoo:alias selector defined or the Thematic Map specific af|dvt-thematicMap::shape-customFoo defined which has the -tr-path property pointing to the svg file.
shapePath String Yes This feature is deprecated. The path to the svg file to use as custom shape. If a shapePath is specified, then the value of the shape attribute is ignored.
shortDesc String Yes The short description of this component. This is used to customize the text that displays in the marker's tooltip.
source String Yes The URI specifying the location of the image resource. If a source is specified, then the value of the shape and shapePath attributes are ignored.
sourceHover String Yes The URI specifying the location of the image resource on hover. If not defined, the source image will be used.
sourceHoverSelected String Yes The URI specifying the location of the selected image resource on hover. If not defined, the sourceSelected image will be used. If sourceSelected is not defined, the source image will be used.
sourceSelected String Yes The URI specifying the location of the selected image resource. If not defined, the source image will be used.
value String Yes The value of the component. When labelDisplay="on", this value will be used as the text label for this marker.
width int Yes Specifies the width of this marker.