Multiple Y Axes

Hi
I am using Flex2 and i am developing line charts,DateTime
with X-Axis and multiple series on Y-Axis, how can i develope
multiple(more than 2) Y-Axes with different ranges

Flex 3 supports multiple (more than 2) axes, where we can
specify horizontal and vertical axis for each series. But Flex 2
supports a maximum of 2 axes. Second axis can be added using the
properties secondHorizontalAxis, secondVerticalAxis,
secondDataProvider and secondSeries

Similar Messages

  • Creating a report with multiple Y-axes on one graph

    I currently have a script that will create a report with either 1, 2, or 3 graphs and has the ability to have four graphs per plot.  I would like to add functionality to this script by making the Y-axis on the graphs have multiple Y-axes.  How can I programmatically create a graph with multiple Y-axes?

    To create an new axis system use the command GraphObjNew, eg:
    Call GraphObjNew("2D-Axis","2DAxis1")
    Call GraphObjOpen("2DAxis1")        
      D2AxisBackColor = "blue"  
    Call GraphObjClose("2DAxis1") 
    Call PicUpdate
    If you have DIAdem Version 10 you can also create a new y-axis using GraphObjYAxisNew. This command is not available in versions 9.1:
    Call GraphObjOpen("2DAxis1")
    AxisNo = GraphObjYAxisNew("left")
    If AxisNo>0 Then
      Call GraphObjOpen(D2AxisYObj(AxisNo))
      D2AXISYTXT ="My new axis"
      D2AXISYTXTFONT ="Arial"
      D2AXISYTXTCOLOR ="red"
      Call GraphObjClose(D2AxisYObj(AxisNo))
    End If
    Call GraphObjClose("2DAxis1")
    Winfried
    Message Edited by winner on 03-23-2006 03:48 PM

  • How to set property nodes for each of the multiple y-axes?

    In Labview 6i, I have set up multiple y-axes on an xy graph. I want to change certain properties of each of the 2 y-axes independently. I believe I can do this using "property node".
    However, after I have created a property node for the xy graph, I realised that there is only 1 y-axis selectable from the list of properties. How can I set the property of the other y-axis then?
    Thanks for the help!

    I believe there is a property called "active graph"... this allows you to
    select the active graph to apply the property changes to...
    Later...
    meng118230 wrote in message
    news:[email protected]..
    > In Labview 6i, I have set up multiple y-axes on an xy graph. I want to
    > change certain properties of each of the 2 y-axes independently. I
    > believe I can do this using "property node".
    >
    > However, after I have created a property node for the xy graph, I
    > realised that there is only 1 y-axis selectable from the list of
    > properties. How can I set the property of the other y-axis then?
    >
    > Thanks for the help!

  • Multiple X axes in DIAdem 9.1

    Is it possible to have multiple X-axis scales for a 2-D plot in DIAdem 9.1? 
    I have no problem with multiple y axes but I would also like multiple x axes as well.
    Thanks,
    Tom

    Hi Tom,
    Multiple X axes are not supported anywhere in DIAdem 2012, so that's a dead stop.  If you want to overlay multiple curves in VIEW that have different X values, you will need to rescale those X values.  If you're plotting waveforms, this is as easy as multi-selecting the set of N channels you want to change in the Data Portal and editing the waveform start offset property, which will make the property value change you entered once to all N channels selected.  If you have N Y channels that share an X channel, then you just need to rescale the one X channel once with the Linear Scaling function in ANALYSIS.
    Brad Turpin
    DIAdem Product Support Engineer
    National Instruments

  • Multiple y axes overlap

    I have a graph with multiple y axes. I programmatically turn on and off some of the y axes as and when I need them, appropriate to the curves I'm plotting.
    When I created the graph, I placed half the y axes to the left of the plot, and the remainder to the right. However, when I use the yScale.Visible property to show/hide the axes, I get something like this:
    What's happening!? Why are my y-axes overlapped? (please ignore the white box in the plot, that's just me covering up some annotation text)
    Message Edited by Thoric on 07-16-2008 04:05 PM
    Thoric (CLA, CLED, CTD and LabVIEW Champion)
    Attachments:
    multiyaxisgraph.jpg ‏44 KB

    My chart has four axes on the left and four on the right, so you can understand why I want to hide those that aren't used as it gets very busy on there sometimes ! Unfortunately, none can be re-used as there are rare occasions when all eight are needed!
    I've managed to re-create the plot, and also create a hard-coded list defining which side of the plot (left or right) each y-axis is meant to reside. Thus, if LV 'forgets' which side of the plot to draw the y axis, it doesn't matter because I'm now calculating the actual scale position.left property and setting it myself.
    Took a bit of coding up, but seems to work nicely now!
    Thanks for the advice Paul. It's good to know people are out there willing to help!
    (I'd rate your answers but I don't have enough posts to have that privilege yet. sorry)
    Thoric (CLA, CLED, CTD and LabVIEW Champion)

  • Multiple Y Axes Reference

    How do I reference a plot to the second Y axis?
    Using the example Multiple Y Axis....
    I want Plot 2 to reference the seconds Y axis, however, it always references the first Y axis
    void CMultipleYAxisDlg:nGenerateData()
    int i;
    CNiReal64Vector RedData(100);
    CNiReal64Vector MagentaData(100);
    CNiReal64Vector WhiteData(100);
    for (i = 0; i < 100; i++)
    MagentaData[i] = -25;
    WhiteData[i] = 125; // always references 1st Y axis on right side
    RedData[i] = 700;
    m_Graph.GetPlots().Item(1).PlotY(MagentaData,0,1);
    m_Graph.GetPlots().Item(2).PlotY(WhiteData,0,1);
    m_Graph.GetPlots().Item(3).PlotY(RedData,0,1);

    The CNiPlot class has a YAxis property whose type is CNiAxis. You should set this property to the axis that you want associated with the plot. For example, assuming your graph has at least two plots and at least two y axes, you could do this:
    m_Graph.Plots.Item(2).YAxis = m_graph.Axes.Item(3);
    - Elton

  • Multiple y axes overlay eachother

    I'm working on a program which will allow users to plot up to 5 different channels with indepdnant y axes. I make them visible / invisible depending on how many channels are being plotted.  Unfortunately, the axes start to overlap eachother.  I decided to programmatically fix this
    The code works just fine initially (for preventing the axes from overlaying eachother), but quickly mess up once you start making them visible / invisible.
    Any thoughts / solutions?
    Solved!
    Go to Solution.

    BowenM wrote:
    I'm working on a program which will allow users to plot up to 5 different channels with indepdnant y axes. I make them visible / invisible depending on how many channels are being plotted.  Unfortunately, the axes start to overlap eachother.  I decided to programmatically fix this
     [code snippet not copied here]
    The code works just fine initially (for preventing the axes from overlaying eachother), but quickly mess up once you start making them visible / invisible.
    Any thoughts / solutions?
    Well, a couple of things (okay, three) come to mind. First, you don't need to use two different property nodes inside your for loop if you are referring to the same axis - just use one property node and pull down a second property. That way you won't have a chance of mixing things up.
    Second, you could use a for loop set to only include the axes/plots you want visible with autoscaling N to an array of your visible plots, then your axes would all be spaced identically.
    Third, you could set the plot position and size to move over and shorten as more y axes are made visible, so you take up the same amount of screen real estate for any case.
    Other customizations are possible, but these should get you where you say you want to be.
    Cameron
    To err is human, but to really foul it up requires a computer.
    The optimist believes we are in the best of all possible worlds - the pessimist fears this is true.
    Profanity is the one language all programmers know best.
    An expert is someone who has made all the possible mistakes.
    To learn something about LabVIEW at no extra cost, work the online LabVIEW tutorial(s):
    LabVIEW Unit 1 - Getting Started
    Learn to Use LabVIEW with MyDAQ

  • How do I graph multiple bit values on one time axis?

    I want to graph multiple bit values, all of which will change back and forth from 0 to 1, on the same time axis, but I don't want any visual overlap between the different bit value traces.  Now I could do this by graphing bit one as either 0 or 1, bit 2 as 2 or 3, bit 3 as 4 or 5, etc., but I would really rather have multiple Y axes showing 0 to 1, stacked vertically on the same time (X) axis.
    You could visualize this as multiple pens on a strip chart continuously recording different values.  Each pen has its own vertical area in which it writes, but all pens could be writing data from the same numerical range.
    Hmmm...  I think my description might be roughly as clear as mud, but if anyone out there can figure out what I am asking and has potential solutions, please let me know.
    Thanks!

    Thanks.  I will look at that VI, but I think I have already seen it.  My problem is that I have CAN data coming in for an hour or so, but the time interval between receiving specific CAN arbitration IDs varies, so I want to plot the X axis against specific, varying time values, not a standard dT.  I'm not sure I can do this on a digital graph, but I haven't given up hope yet.
    BTW, I am receiving 8-byte CAN packages.  Some of the bytes represent actual values, but I need to break others up into individual bit values to see error and status flag settings.  Once I break the bytes into bits, I convert from analog values to digital values.

  • Chart Multiple Axis

    I have seen the flex's chart documentation about multiple
    axes.
    In this documentation the example speak about single
    horizontal axis and multiple vertical axes.
    The question is: may i have multiple horizontal axis? Has it
    sense?
    Thank you

    Sorry, i give response by my self.. i can use
    labelfunction...

  • Hide grid secondary axes export image

    Hi there,
    I'm trying to export some simplified images from graphs, with the grid hidden since it tends to make things look messy. The thing is, when there are multiple y-axes this option seems to be ignored on the second axis. Does anyone have any idea how to get around this?
    Thanks!
    Solved!
    Go to Solution.

    Hi Matt,
    Yep, using a property node to select the ActiveYScale, then subsequent properties of that scale should be the way to refer to each of them. The order is easy enough to determine from the order they were added or by name in the graph properties. It's the same method I use to programmatically set scale names, plot names, which Y axis to use for each plot and so-on. Takes a little bit more work (and space) than the standard invoke node though!
    Thanks again,
    Regards
    Attachments:
    export image hide grids.vi ‏67 KB

  • Controlling an existing application via webservices

    Hi all,
    I just came across labview webservices whilst at one of the NI Tech symposiums in the UK last week and I want to use them for a specific application. However my initial playing hasn't worked very well! I want to know if I'm doing something wrong, or if what I'm trying to do isn't possible!
    We have an existing application which controls a piece of measurement kit. It has multiple moving axes and some data acquisition and automated measurements etc etc. The application is all based on queued state machines and event structures for UI etc. At the moment the system is controlled by a user next to the machine with a PC. For some of the measurement setup, it can be useful for the user to move around and view the system from different angles whilst positioning the moving axes. At the moment that means walking round the system, looking to see how the alignment is, jusdging what change needs to be made, going back to the pc, making the change walking round... you get the idea!
    What I wanted to do was to set up a webservice "interface" to the system giving fairly basic control of the positioning system. My plan was to write an intermediate VI which is opened by the user on the PC (via the existing application) to enable "remote" operation. This intermediate VI would then wait for the webservice vi to be called by the user on his/her mobile web enabled device and then pass instructions directly into the main applications Queue. The use of the intermediate means we don't have to re-write any of the main application and also gives a layer of security since the user has to manually call that VI from the main application. 
    In the ideal world that intermediate vi would be "event driven" i.e. it would either contain an event structure or Queue system and wait for the webservice to fire that event/queue (and send in instructions). However this is the bit that doesn't seem to work. I tried creating a user event within the intermediate vi and writing the reference to that event into a shared variable which the webservice could see, but that failed (apparently user events can't be written to shared variables?). Then I tried with a Queue, but nothing happened... I could of course have the intermediate vi just polling shared variables written by the webservice VI, but that doesn't sound great to me... 
    Does anyone have any thoughts on this? Is there a sensible way to "tack on" a webservice to an existing application? Other than network shared variables is there any other communication method that works between webservices and other VIs running? (I think this may be the key question)...
    Thanks in advance for your thoughts!
    Paul

    Getting data from your LabVIEW built web service over to your LabVIEW application is the trickies part of using LV web services because they run in seperate LabVIEW contexts.
    Since you are using an event based and queue based archtiecture, you are in a good position to add remote support in. This is an excellent architecture for extensibility.
    I can put forth 2 recommendations for you to try out. I agree with you that shared variables are a bad idea, they are lossy and would require you to add polling to your event driven architecture.
    1) TCP/IP
    You could open a TCP/IP port between the web service VI and your main application. I would recommend wrapping the TCP calls into a set of new API VIs that allows your application to block on a TCP request. For instance, you could create your own queue API that uses TCP under the hood to pass data. Your web service would use this new Queue API to put items into the queue, and your main app would then have another queued event handler to service items put into the queue. When this new queued event hanlder sees something on the queue, it could either fire user events in your main app's LV event handler, or just pass events over to your original queued state machine.
    2) VI Server
    create a simple VI that can invoke a user event on your main app's event handler, or can push something into your main app's queued state machine.  Then open and run this VI via VI Server from your web method.  This VI should just run once and exit, and all it does it pushes something into your state machine or queue. You can either have many of these VIs to match the specific events, or have one VI with a string on the front panel, then via VI server, put a value into that control from your web method. 
    I personally find the 2nd option the easiest to implement.
    Good luck.
    -Jared

  • Programmatically change primary and secondary Y-Axis range

    Ok, so the idea is that I have a chart with two different data types on it.  One is plotted on the primary Y-axis on the left side and the other is on the secondary Y-axis on the right side.  Both share the same X-axis.
    How do I change the range seperately for the primary Y-axis and secondary Y-axis?  Whats currently happening is no matter which "Active Plot" or "Y-Axis Index" I select, it only changes the range for the secondary axis.  Any help would be amazing!

    We are going to need to see some code to help with this.  and some clarification sinc a "Chart" cannot have multiple y axes
    Assuming you have an XY Graph this little code demonstrates how to set the scales min and max programatically
    Jeff

  • Multiple axes chart - baseline issue

    Hi all,
    I'm currently working on charts (column, bar, line, ..) with
    multiple axes (each for one series).
    If negative amount values are shown in a chart, the baselines
    (for zero values) appears
    on different coordinates/levels.
    As an example see the code listed below:
    <?xml version="1.0"?>
    <mx:Application xmlns:mx="
    http://www.adobe.com/2006/mxml">
    <mx:Script>
    <![CDATA[
    import mx.collections.ArrayCollection;
    [Bindable]
    public var expenses:ArrayCollection = new ArrayCollection([
    {Month:"Jan", Profit:2000, Expenses:15},
    {Month:"Feb", Profit:1000, Expenses:20},
    {Month:"Mar", Profit:1500, Expenses:50},
    {Month:"Apr", Profit:100, Expenses:-10}
    ]]>
    </mx:Script>
    <mx:Panel title="Column Chart">
    <mx:ColumnChart id="myChart" dataProvider="{expenses}"
    showDataTips="true">
    <mx:horizontalAxis>
    <mx:CategoryAxis dataProvider="{expenses}"
    categoryField="Month"/>
    </mx:horizontalAxis>
    <mx:series>
    <mx:ColumnSeries xField="Month" yField="Profit"
    displayName="Profit">
    <mx:verticalAxis>
    <mx:LinearAxis id="v1"/>
    </mx:verticalAxis>
    </mx:ColumnSeries>
    <mx:ColumnSeries xField="Month" yField="Expenses"
    displayName="Expenses">
    <mx:verticalAxis>
    <mx:LinearAxis id="v2"/>
    </mx:verticalAxis>
    </mx:ColumnSeries>
    </mx:series>
    <mx:verticalAxisRenderers>
    <mx:AxisRenderer placement="left" axis="{v1}"/>
    <mx:AxisRenderer placement="right" axis="{v2}"/>
    </mx:verticalAxisRenderers>
    </mx:ColumnChart>
    <mx:Legend dataProvider="{myChart}"/>
    </mx:Panel>
    </mx:Application>
    I'm using Flex Builder 3.0.2 /Flex SDK 3.2.
    Is this is a bug in flex?
    Am i missing something in the mxml/as, or is there a solution
    or workaround?
    Any hints are highly appreciated.
    Regards,
    Matthias

    The series both work fine on their own, of course, but when
    you mix in a series with a negative value, it causes the "floating
    columns" because the zero-points on the axes don't line up with
    each other.
    My suspicion is that this is expected behavior. This would
    work with other column chart types (like stacked), as long as you
    set allowNegativeForStacked to true (there's an example here:
    http://livedocs.adobe.com/flex/3/html/help.html?content=charts_displayingdata_11.html).
    But since you want clustered columns, it might be a problem.
    If you think it is a bug, you can file one here:
    http://bugs.adobe.com/jira
    hth,
    matt horn
    flex docs

  • Buffered high-speed capture with multiple axes

    Has anyone succeeded in using buffered high-speed capture (on 7350 boards) with multiple axes?
    The capture works really well for me on a single axis, but when I try to use it on 2 axes simultaneously it behaves very strangely.  There seems to be some kind of unwanted interaction between the two buffers which means data points are lost and they often stop updating altogether.
    A very similar question was posted here over a year ago (http://forums.ni.com/ni/board/message?board.id=240&thread.id=4087), which includes a more detailed explanation and an example VI.  Can anyone help?  I'm using LabVIEW 8.5 RT with NI-Motion 7.6 and a 7358 board.
    Thank you,
    Ian

    Hi Ian
    I have been asked working with kostas on this problem for you and just wanted to give you an update as I know its been a while and is an important issue for you. I have been chasing up our specialists in the field and resently had responses of  the kind:
    "Hi Graham
    The issue was found out to be a bug in our motion driver. The issue is being examined by motion R&D right now. I do not know a time frame on when this will be fixed as it is proving to be a tricky problem. I am copying Stuart and Lorne on this since they have been working on it as well.
    Thanks,"
    Be assured that I am chasing it as closely as I can. From your end what is the situation, do you have a work arround that will suffice or are you still waiting on this.
    Thanks for your understanding and I look forward to hearing from you with your current situation.
    best regards
    Graham Green
    Technical Marketing Engineer
    National instruments UK & Ireland

  • Column Chart with Multiple axes

    Hi folks
    I am using flex 2 charts for displaying data. I want to show my data using column chart with secondary axis. However columns for multiple series are coming one over another. here is the code I have attached:-
    But I want to put columns side by side. Any thoughts will be appreciated.
    Warm Regards
    Rush-me

    Any thoughts?
    Warm Regards
    Rush-me

Maybe you are looking for

  • In R3 the status shows as Shipped. In CRM the order shows as Open

    Hi, When I check in R/3 the delivery status is complete but for the same order the status in CRM is Partially shipped/open. Can anyone help me in diagnosing this issue? Thanks in advance. Khan

  • Wrapping text around the image in illustrator cs4

    I am trying to create a brochure with wrapping text around the image, I have followed several online tutorials like http://www.tutorials-expert.com/tutorial/19302/Wrapping-Text-Around-an-Image-in-Illustrato r.html and some other but I followed these

  • Loading fonts with stylemanager

    Hi all, I am have embedded fonts with css and compiled css to swf. Each font I am loading with StlyeManager.load methods. When each loads swf it renders whole application. any suggestion what to do? Should i use module loader ? Please help me. Thanks

  • Photos abruptly stop during slide show

    During slide show using apple tv either my music or the photos will abruptly stop.  Music stops if I start it from the photo slide show set-up.  The slide show stops if I set the music to play from the computer to my stereo house speakers.  Wireless

  • Can i retrieve deleted messages from my iphone

    can i retrieve deleted messages from my iphone?