Programmatically add  dvt:annotation(s) on a bar graph

I have a dvt:barGraph that uses the BAR_VERT_STACK subType.
I am building the data/model via a backing bean method. This seems to work fine.
At this point, I want to add annotations to specific “cells” within the bar(s).
However, I am not sure how to programmatically do this (add dvt:annotation(s) to my graph).
For example, I would like to call a method and have the [Group=1,Series=0] and [Group=2,Series=3] cells have the annotation "*".
Any suggestions?
Thanks

You can try to bind graph component to bean and use something like:
Annotation annotation = new Annotation();
annotation.setSeries(0);
annotation.setGroup(0);
annotation.setText("My text");
Map annotationMap = graphComp.getAnnotationSet().getAnnotationMap();
if(annotationMap == null){
    annotationMap = new HashMap();
    graphComp.getAnnotationSet().setAnnotationMap(annotationMap);
annotationMap.put(0, annotation);
AdfFacesContext.getCurrentInstance().addPartialTarget(graphComp);Dario
Edited by: kdario on Nov 26, 2012 4:04 PM

Similar Messages

  • Programmatically create a bar graph (ADF DVT) at run time...

    Can someone show me how to programmatically create a bar graph (ADF DVT) at run time..
    Thanks in advance.
    Minh

    Hi Briston,
    You can make the column selected by setting "selected" property of column to true
    Sireesha

  • How to programmatically add rectangle to a pdf file ?

    How to programmatically add rectangle to a pdf file ?
    There is several page pdfs, non-vector, black and white.
    Users are color blind and have disabilities.
    To train them, one adds a rectangle at a certain lower-left point and width,height specified for a page.
    The idea is to give the script the page and coordinates and size of rectangle to be added programmatically. Green rectangles are acceptable as the cones are most sensitive there.
    Also, additional feature to add bookmarks on the left in the order these rectangle data is provided to the script.
    The script could be "hard-wired" by a list of the rectangle coodinates, and page number, pasted inside acrobat and run or entered into acrobat in some way.
    Your script would help many disabled people who are distributed through out the world.
    Feel free to contact me by email if you wish.
    Dying Vets

    P.S.
    This rectangle does not have to be a full annotation rectangle which needs user,date and a lot of info.
    Something minimal like this would suffice
    1 0 0 RG % red for stroke color
    200 300 50 75 re
    As you can see that the native unit of the pdf file is the "point" having 72 in an inch.
    The file dpi would be given. However, one could assume that pixel for the rectangle lower-left and width/height are given.
    From the pixels and dpi, the points could be calculated if desired.

  • ADF DVT: Stack Bar Graph unable to display all Bar.

    Hi Experts,
    I'm currently having a problem displaying bar graphs in my Use Case.
    There are unavoidable instance that at some point of the information provided, there may be part that contain a very huge data.
    Below is my sample code.
    In the example code below only the detail with huge data is rendered in the graph. and the rest are not rendered. is this  a known issue?
    screenshot: http://sdrv.ms/13DXeyn.
    I'm using ADF PS6 in windows7(64bit), Chome browser.
    ManagedBean. This bean contains static data for testing only. Notice how big the data in the 2nd to the last detail.
    import java.text.DateFormat;
    import java.text.ParseException;
    import java.text.SimpleDateFormat;
    import java.util.ArrayList;
    import java.util.Date;
    import java.util.List;
    import javax.faces.event.AbortProcessingException;
    import oracle.adf.view.faces.bi.component.graph.UIGraph;
    import oracle.adf.view.faces.bi.event.TimeSelectorEvent;
    public class GraphTimeAxisManagedBean {
        SimpleDateFormat stdFormat = new SimpleDateFormat("yyyy-MM-dd-HH.mm.ss");
        public List getTabularData() {
            ArrayList list = new ArrayList();
            try {
              list.add(new Object[] { new Date(stdFormat.parse("2010-06-18-00.00.00").getTime()),"", new Double(0) });
              list.add(new Object[] { new Date(stdFormat.parse("2010-06-18-00.00.00").getTime()),"description 1", new Double(20) });
              list.add(new Object[] { new Date(stdFormat.parse("2010-06-18-00.00.00").getTime()),"description 2", new Double(50) });
              list.add(new Object[] { new Date(stdFormat.parse("2010-06-18-00.00.00").getTime()),"description 3", new Double(30) });
              list.add(new Object[] { new Date(stdFormat.parse("2010-07-01-00.00.00").getTime()),"", new Double(0) });
              list.add(new Object[] { new Date(stdFormat.parse("2010-07-01-00.00.00").getTime()),"description 1", new Double(150) });
              list.add(new Object[] { new Date(stdFormat.parse("2010-07-01-00.00.00").getTime()),"description 2", new Double(240) });
              list.add(new Object[] { new Date(stdFormat.parse("2010-07-01-00.00.00").getTime()),"description 3", new Double(10) });
              list.add(new Object[] { new Date(stdFormat.parse("2010-08-01-00.00.00").getTime()),"", new Double(0) });
              list.add(new Object[] { new Date(stdFormat.parse("2010-08-01-00.00.00").getTime()),"description 1", new Double(60) });
              list.add(new Object[] { new Date(stdFormat.parse("2010-08-01-00.00.00").getTime()),"description 2", new Double(80) });
              list.add(new Object[] { new Date(stdFormat.parse("2010-08-01-00.00.00").getTime()),"description 3", new Double(10) });
              list.add(new Object[] { new Date(stdFormat.parse("2010-09-01-00.00.00").getTime()),"", new Double(0) });
              list.add(new Object[] { new Date(stdFormat.parse("2010-09-01-00.00.00").getTime()),"description 1", new Double(90) });
              list.add(new Object[] { new Date(stdFormat.parse("2010-09-01-00.00.00").getTime()),"description 2", new Double(50) });
              list.add(new Object[] { new Date(stdFormat.parse("2010-09-01-00.00.00").getTime()),"description 3", new Double(80) });
              list.add(new Object[] { new Date(stdFormat.parse("2010-10-01-00.00.00").getTime()),"", new Double(0) });
              list.add(new Object[] { new Date(stdFormat.parse("2010-10-01-00.00.00").getTime()),"description 1", new Double(10) });
              list.add(new Object[] { new Date(stdFormat.parse("2010-10-01-00.00.00").getTime()),"description 2", new Double(90) });
              list.add(new Object[] { new Date(stdFormat.parse("2010-10-01-00.00.00").getTime()),"description 3", new Double(80) });
              list.add(new Object[] { new Date(stdFormat.parse("2010-11-01-00.00.00").getTime()),"", new Double(0) });
              list.add(new Object[] { new Date(stdFormat.parse("2010-11-01-00.00.00").getTime()),"description 1", new Double(200) });
              list.add(new Object[] { new Date(stdFormat.parse("2010-11-01-00.00.00").getTime()),"description 2", new Double(20) });
              list.add(new Object[] { new Date(stdFormat.parse("2010-11-01-00.00.00").getTime()),"description 3", new Double(70) });
              list.add(new Object[] { new Date(stdFormat.parse("2010-12-01-00.00.00").getTime()),"", new Double(0) });
              list.add(new Object[] { new Date(stdFormat.parse("2010-12-01-00.00.00").getTime()),"description 1", new Double(60) });
              list.add(new Object[] { new Date(stdFormat.parse("2010-12-01-00.00.00").getTime()),"description 2", new Double(80) });
              list.add(new Object[] { new Date(stdFormat.parse("2010-12-01-00.00.00").getTime()),"description 3", new Double(10) });
              list.add(new Object[] { new Date(stdFormat.parse("2011-01-01-00.00.00").getTime()),"", new Double(0) });
              list.add(new Object[] { new Date(stdFormat.parse("2011-01-01-00.00.00").getTime()),"description 1", new Double(90) });
              list.add(new Object[] { new Date(stdFormat.parse("2011-01-01-00.00.00").getTime()),"description 2", new Double(80) });
              list.add(new Object[] { new Date(stdFormat.parse("2011-01-01-00.00.00").getTime()),"description 3", new Double(70) });
              list.add(new Object[] { new Date(stdFormat.parse("2011-02-01-00.00.00").getTime()),"", new Double(0) });
              list.add(new Object[] { new Date(stdFormat.parse("2011-02-01-00.00.00").getTime()),"description 1", new Double(60) });
              list.add(new Object[] { new Date(stdFormat.parse("2011-02-01-00.00.00").getTime()),"description 2", new Double(80) });
              list.add(new Object[] { new Date(stdFormat.parse("2011-02-01-00.00.00").getTime()),"description 3", new Double(30) });
              list.add(new Object[] { new Date(stdFormat.parse("2011-03-01-00.00.00").getTime()),"", new Double(0) });
              list.add(new Object[] { new Date(stdFormat.parse("2011-03-01-00.00.00").getTime()),"description 1", new Double(203)});
              list.add(new Object[] { new Date(stdFormat.parse("2011-03-01-00.00.00").getTime()),"description 2", new Double(90)});
              list.add(new Object[] { new Date(stdFormat.parse("2011-03-01-00.00.00").getTime()),"description 3", new Double(70)});
              list.add(new Object[] { new Date(stdFormat.parse("2011-04-01-00.00.00").getTime()),"", new Double(0) });
              list.add(new Object[] { new Date(stdFormat.parse("2011-04-01-00.00.00").getTime()),"description 1", new Double(75) });
              list.add(new Object[] { new Date(stdFormat.parse("2011-04-01-00.00.00").getTime()),"description 2", new Double(86) });
              list.add(new Object[] { new Date(stdFormat.parse("2011-04-01-00.00.00").getTime()),"description 3", new Double(99) });
              list.add(new Object[] { new Date(stdFormat.parse("2011-05-01-00.00.00").getTime()),"", new Double(0) });
              list.add(new Object[] { new Date(stdFormat.parse("2011-05-01-00.00.00").getTime()),"description 1", new Double(60105) });
              list.add(new Object[] { new Date(stdFormat.parse("2011-05-01-00.00.00").getTime()),"description 2", new Double(50309) });
              list.add(new Object[] { new Date(stdFormat.parse("2011-05-01-00.00.00").getTime()),"description 3", new Double(50210) });
              list.add(new Object[] { new Date(stdFormat.parse("2011-06-01-00.00.00").getTime()),"", new Double(0) });
              list.add(new Object[] { new Date(stdFormat.parse("2011-06-01-00.00.00").getTime()),"description 1", new Double(80) });
              list.add(new Object[] { new Date(stdFormat.parse("2011-06-01-00.00.00").getTime()),"description 2", new Double(77) });
              list.add(new Object[] { new Date(stdFormat.parse("2011-06-01-00.00.00").getTime()),"description 3", new Double(99) });
            } catch (ParseException e) {
            return list;
    JSFF (UI Page).
    <?xml version='1.0' encoding='UTF-8'?>
    <jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="2.1"
              xmlns:dvt="http://xmlns.oracle.com/dss/adf/faces"
              xmlns:af="http://xmlns.oracle.com/adf/faces/rich">
      <af:panelGroupLayout id="pgl1">
        <dvt:graph id="barGraph1" graphType="BAR_VERT_STACK" shortDesc="testing"
                   inlineStyle="width:800px; height:300px;"
                   tabularData="#{pageFlowScope.GraphTimeAxisManagedBean.tabularData}">
          <dvt:background>
            <dvt:specialEffects/>
          </dvt:background>
          <dvt:graphPlotArea/>
          <dvt:seriesSet>
            <dvt:series/>
          </dvt:seriesSet>
          <dvt:o1Axis/>
          <dvt:y1Axis/>
          <dvt:legendArea automaticPlacement="AP_NEVER"/>
        </dvt:graph>
      </af:panelGroupLayout>
    </jsp:root>
    Thanks,
    achie

    Achie,
    This is not an issue with the graph as such, but the data issue. Since the value of the data that is being displayed is huge and other datas are relatively very small to occupy the graph area (Ex : 60105 Vs 10).
    You may want to try implementing zoomListener and/or zoomScrollListener for the graph to zoom and see the small datas.
    &amp;lt;dvt:graph&amp;gt;
    -Arun

  • TabularData for DVT Stack bar Graph

    Dear All,
    I used tabulardata to supply value fro my stack bar graph component and I used the code below
    public class Stackbar
      public List getTabularData()
        ArrayList list = new ArrayList();
        String[] rowLabels = new String[]
          { "Dry Goods", "Wet Goods", "Misc Goods" };
        String[] colLabels = new String[]
          { "May 2009", "June 2009", "July 2009" };
        Double[][] values = new Double[][]
            { 50000d, 122000d, 175000d },
            { 90000d, 110000d, 150000d },
            { 65000d, 50000d, 95000d }};
        for (int c = 0; c < colLabels.length; c++)
          for (int r = 0; r < rowLabels.length; r++)
            list.add(new Object[]
                { colLabels[c], rowLabels[r], new Double(values[r][c]) });
        return list;
    }JSF is simple
    <dvt:barGraph id="barGraph1" subType="BAR_VERT_STACK2Y" shortDesc="Sample bar"
                              tabularData="#{viewScope.stackBarBean.tabularData}">
                  <dvt:background>
                    <dvt:specialEffects/>
                  </dvt:background>
                  <dvt:graphPlotArea/>
                  <dvt:seriesSet>
                    <dvt:series/>
                  </dvt:seriesSet>
                  <dvt:o1Axis/>
                  <dvt:y1Axis/>
                  <dvt:y2Axis/>
                  <dvt:legendArea automaticPlacement="AP_NEVER"/>
                </dvt:barGraph>But I am not able to have a stack bar graph and the data isnt stacking..
    Kindly see the image here http://imageshack.us/photo/my-images/831/stackbar.jpg/
    My playground code can be downloaded here...
    http://code.google.com/p/my-dev-projects/downloads/detail?name=PlayGround.zip&can=2&q=
    How do I formulate the tabular data values correctly so that I could achive the correct stack bar graph component
    Thanks.
    JDEV 11.1.1.6

    Well...found the solution myself...
    Kindly disregard please..thanks

  • How do I add an image to my navigation bar?

    How do I add an image to my navigation bar? I created my own. Let's say for example I wanted to a page dedicated to the lakers rss feed, and instead of having text in the box "Lakers", I want it to be the lakers logo. I already have the hyperlink in that box working.

    That didn't sound right:
    How do I add an image to my navigation bar? I created my own. Let's say for example I wanted to have a page dedicated to the lakers rss feed, and instead of having text in the box on the bar that reads "Lakers", I want it to be the lakers logo. I already have the hyperlink in that box that will direct you to that page.

  • How to add multiple annotation in selection one by one

    Hi,
    I want to add annotation one by one to selection thru code. I tried to use  
    AVDocSetSelection (avDoc, ASAtomFromString(
    "Annotation"), (void *)pdAnnot, true);
    but this clear the previous selection.And I am not able to add multiple annotation. So I want to know how we can do this?
    Regrads
    Arvind

    Hi,
    But I am also getting problem when I try to select/highlight multiple annotations in one shot. I am using below code to do that.
    PDAnnot pdAnnots =( PDAnnot)ASmalloc( numAnnots* sizeof(PDAnnot));
      for(int i=0; i< numAnnots;i++)
                pdAnnots+ = list+;
            if(numAnnots > 0)
                AVDocSetSelection (avDoc, ASAtomFromString("Annotation"), (void*)pdAnnots, true);
    But this selects only ONE annotation instead of all. Could you please help me why it is doing like that?
    Thanks in advance,
    Arvind

  • In Preview, when I add text annotations to my PDF (lecture note slides), they look fine until I close it and reopen it, and then they are rotated 90 degrees. How do I fix this and keep it from happening again?

    In Preview, when I add text annotations to my PDF (lecture note slides), they look fine until I close it and reopen it, and then they are rotated 90 degrees. How do I fix this and keep it from happening again?

    I have the same problem with lectures slides.
    Furthermore, sometimes the text box, when doube-clicking, turns  the text into a one-liner. Causing the text box to sometimes get 3. times wider than the pdf itself.
    tcrother wrote:
    ... then when it rotates the text isn't visible and I'm stuck clicking on random parts of my lecture slides hoping the text box will come back. ...
    By pressing [cmd + I] the Inspector opens up and clicking on the rightmost tab 'Annotations' you should be able find those Annotations again. I do this regularly to find the empty annotations I accidentally create while clicking through slides.

  • How do you Add a Link in Nav. Bar to a different site?

    I would like to add a link to the Nav Bar that goes to a location of my choice. Is that possible in iWeb? If So, how?
    Thanks
    Neil

    Here's a way to do it:
    1 - create a blank page with the name you want to appear in the navbar.
    2 - publish the site.
    3 - edit the html file of the page and put the following in the head section of the file:
    <meta http-equiv="REFRESH" content="0;url=http://www.the-domain-you-want-to-redirect-to.com">.
    Replace the “0” with the number of seconds you would like to pass before the redirection takes place. Put in the URL of your destination site.
    As long as you never make any more changes to that page or use the Publish All to MobileMe option you won't have to reedit the html file and add the code all over again. This is a demo of that feature with an 8 second lag.
    Now the external page will be in your navbar.
    OT

  • How do I add an image above the navigation bar?

    I'm trying to add an image above the navigation bar and can't seem to do it without covering the links. Does anyone know how to do that?
    Thanks!

    Hi,
    select the page you want to add the image to
    open up the Inspector and go to the Page Tab (second from left)
    Choose Layout and increase the size of Header Height
    Regards,
    Cédric

  • Need to add a link on Page title bar

    HI,
    Can i know how can i add a link on page title bar.
    When i click on that link, it should open  a page in a separate window.
    Regards,
    Raju

    Hi,
    i am talking about portal only.
    once you login, you can see history, back and forward links on top of page title bar.
    Now i need to add one more link just beside history.
    Can you please give me brief idea on customisation of page title bar.
    Regards,
    Raju

  • Add a Button in JFrame Title Bar

    How can I add a button in JFrame Title Bar. I want to put on more button for docking after the closing button in the title bar.

    if you use JFrame.setDefaultLookAndFeelDecorated(true) then you can do it by extending the JRootPaneUI class of the L&F (the default is the metal L&F). that is not a easy task but if you want take a look at BasicRootPaneUI, there you will have to point it to a new TitlePane which you will have to create. to load all this you must use the UIManager class. if you need more explaination try reading on look and feel and customizing it.

  • How to add push button in application tool bar in SAP transaction VA01

    How to add push button in application tool bar in SAP standard transaction VA01 and how to implement the code for that function code.

    There is no scope to create a push button in application tool bar. Instead of that we can add in a menu bar.

  • How to programmatically add UDVs to project?

    Hi all,
    I have successfully used something like this to programatically add shared variables to an LVLIB (the code assumes that the library associated with the Container Reference contains at least one variable):
    An example output would be:
    Container Name: "MyLibrary.lvlib"
    Variable Name: "Variable1"
    Variable Path: <blank>
    Variable Type String: "Variable"
    (I notice that there is no way to specify the data type of the variable, and LabVIEW creates a DBL variable in the LVLIB by default.)
    However, if Container Reference is associated with a "User-Defined Variables" container, then I get Error 1 at the Invoke Node ("LabVIEW: An input parameter is invalid"). A example output is:
    Container Name: "User-Defined Variables"
    Variable Name: "Variable1"
    Variable Path: <blank>
    Variable Type String: "Variable"
    Questions:
    Does the error occur because LabVIEW is trying to create a DBL variable (which is not allowed with UDVs)?
    How can I programmatically add UDVs to my project?
    Thanks in advance!

    What is the scope of your project? How will you be using these UDV's?
    Mark P.
    Applications Engineer
    National Instruments
    www.ni.com/support

  • Can I Add the Trash to the side bar

    Can I Add the Trash to the side bar
    I want the trash on my side bar every time i open a folder i want it somewhere here

    Hi again, yes you can, in the Finder drag the hidden folder called .Trash in your Home folder to the Sidebar.
    show hidden files in OSX Finder
    Open the terminal and type or copy/paste:
    defaults write com.apple.finder AppleShowAllFiles -bool true
    Reverting to the default of NOT showing hidden files:
    defaults write com.apple.finder AppleShowAllFiles -bool false

Maybe you are looking for

  • Regarding no employee discount message! Please Read everything and you will know

    come on does anyone read what the sign says anymore? The first page when you go to www.verizonwireless.com/iphoneorder says in big bold letter PLEASE READ BEFORE ORDERING It then goes to say, that employee discounts on plans will be honored. It also

  • IPod Touch no longer syncs wirelessly with iTunes

    My 4th gen iPod Touch (IOS 5.1) has been syncing wirelessly with iTunes on my Mac for months without a problem. Suddenly, the iPod no longer appears in the "Devices" area of iTunes, as it always has. "Sync using wireless" is enabled in iTunes iPod To

  • Add a field in selection screen and enter data in that field .......

    Hi, I want to add a field in the seletion screen and when the user enters data , it should store in the data base table, the data base table is MKPF-BKTXT, please can any one let me know how to do this... very urgent...

  • Tried to download Pages, said it was installed but it didn't..

    It was installing the latest Pages from the App store, I came back sometime later and it said "installed" but when i opened it it was still Pages 08. plus it didnt ask for my credit card info. i am afraid to hit install again in case it bills my cred

  • Database is not started using spfile

    Dear Friends , I got a strange problem . My databasae is not started using spfile default . Sequences are as stated below : 1) SQL> startup pfile='/orafs/admin/MISLTEST/pfile/init.ora.082008214648'; ORACLE instance started. Total System Global Area 1