Child pages
  • plotSet - tag to display multiple plots

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migration of unmigrated content due to installation of a new plugin

 plotSet overview

  

  The body of the plotSet tag is executed in the scope of plotter. The body can contain nested "style" tags, one plotSetBar tag, and one "region" tag.

  One must specify number of plots to be plotted:"nplots" or "plots" attribute.

"plots" is a list of IManagedObjects to be plotted. Each object from the list is plotted in a separate plotter region. 

  There are other optional plotSet attributes, with default values, e.g.:

        height = 400 or 200*nX (pixels)
        width  = 600 or 300*nY (pixels)
        format = "png"
        statusVar = "status" (name of the variable that keeps PlotSetStatus object with the current status of the loop: index, plots, ....)
        allowDownload  = "true"
        createImageMap = "false"
        maxPlots = "9" (maximum number of plots per page)
        layout = "" (plot layout, must be in the form of nX x nY)

       Default layout:
        n Plots     nX x nY
          n<2         1x1
          n=2         1x2
      3<=n<5        2x2
      5<=n<7        2x3
      7<=n<10       3x3

 PlotSetStatus object has the following properties:

nplots, maxplots, plotsinpage, index, offset, offsetvariable, plots

plotSet can also contain the plotSetBar tag with the following attributes:

        url - required (The page to link the navigation bar to)

        var = "href" (name of the variable that keeps PlotSetBarStatus object with the current status of the bar hrefs: first, previous, last, ....)

PlotSetBarStatus object has the following properties that are filled with hrefs:

defaultBar, first, previous, next, last, pages

  

Examples:

1. Very simple example - just plot using defaults

Code Block
 <!-- plot set of IManagedObjects -->
<plotSet plots="${dataArray}" />

2. Set same style for all regions

Code Block
<!--
    plot a set of IManagedObjects with a single
    plotter-level style
-->
<plotSet plots="${dataArray}">
    <style>
        .......
    </style>
</plotSet>

3. Set different styles for odd and even regions

Code Block
<!--
    plot a set of IManagedObjects with a different
    region-level styles
-->
<plotSet statusVar="status">   <region>
    <c:choose>
        <c:when test="${status.index%2 == 0}">
            <style>
                .......
            </style>
        </c:when>
        <c:otherwise>
            <style>
                .......
            </style>
        </c:otherwise>
    </c:choose>   <plot var="${dataAray[status.index]}"/>   </region>
</plotSet>

4. Plot data with two overlays, each uses different style

Code Block
<!--
    plot a set of IManagedObjects with overlays and
    individual data styles
-->
<plotSet statusVar="status">
    <style>
        .......
    </style>
   <region>
    <plot var="${dataArray1[status.index]}">
        <style>
            .......
        </style>
    </plot>
    <plot var="${dataArray2[status.index]}">
        <style>
            .......
        </style>
    </plot></region>
</plotSet>

5. Make regions clickable with unique href-s and styles

Code Block
<!--
    plot a set of IManagedObjects with overlays.
    Make regions clickable and with unique styles.
    *** Seems that we need to set "href" by-hand, since tag
     *** itself knows only IManagedObjects, not paths to them
-->
<plotSet createImageMap="true" statusVar="status">
   <region title = "Region ${status.index}" href = .... >
       <plot var="${dataArray1[status.index]}">
           <style>
               .......
           </style>
       </plot>
       <plot var="${dataArray2[status.index]}">
           <style>
               .......
           </style>
       </plot>    </region>
</plotSet>