Programatically focusing an XY graph
I am working on a GPS application where I am plotting positions found in an
XY graph. I've come sofar that I can see my trail and a dot of my current
position. I've been trying to readjust the xy graph such that my current
position stays in the middle and zooming is still possible. I've tried with
several property nodes, but didn't get it to work. help files also mention
that most properties cannot be changed at run-time (what other time, then?).
I am considering determining to only display points found within a certain
distance of the current point and have it auto-scale, but that would take
(unnecesary?) computing power. Any other suggestions?
Thanks!
Aart-Jan
thanks, dennis, I just figured it all out. I started with an outdated example from the NI library (XY Graph with Variable-Time X-axis) that got me started on a better understanding of the range property. Actually quite simple. Just select the x/yscale.range.maximum and .minimum properties. Get the current position values and sutract a constant value for minimum and add for maximum of the range. Great! Makes zooming also a breeze. Thanks anyways for following up
Aart-Jan
Similar Messages
-
HopeHow do you clear (programat​ically) an XY Graph
Hopefully this is a simple question. How does one clear an XY graph at the onset of a program?
Solved!
Go to Solution.Hi RDL,
graphs are cleared by wiring empty arrays, charts are cleared by wiring empty arrays to a "history" property node!
Best regards,
GerdW
CLAD, using 2009SP1 + LV2011SP1 + LV2014SP1 on WinXP+Win7+cRIO
Kudos are welcome -
Programatically label xy graph
is it possible to programatically label an xy graph, updating the label using a property node everytime the graph updates?
CLA, CLED, CTD,CPI, LabVIEW Champion
Platinum Alliance Partner
Senior Engineer
Using LV 2013, 2012
Don't forget Kudos for Good Answers, and Mark a solution if your problem is solved.prbably better to use the caption instead of the lable for labling a graph (since the lable is user for many other things keeping it constant is a good idea), but this is a property node caption->text
Paul Falkenstein
Coleman Technologies Inc.
CLA, CPI, AIA-Vision
Labview 4.0- 2013, RT, Vision, FPGA -
I completed my new JFDraw vector graph application
Hi, friends,
It seems that this message would be an ads about JFDraw. so sorry for that.
JFDraw is a pure Java based graphics application and library package. JFDraw used a little features of Java2D, and expanded a lot of graph routines for more complex vector graph processing. You can run JFDraw under any operating systems that suport Java.
JFDraw is focused on vector graph drawing field. It can help you to complete your mechanical, electronic, architectural graphs drawing applications, or even business process or workflow graphs issues.
Written by pure text based editor(Windows NotePad & Unix VI), built by Sun Java Development Kit(JDK) 1.3.x and Apache Ant, JFDraw will offer you the opportunities to incorporate it into your graph applications, in binary library mode or source code mode.
Welcome to my web site: http://www.jfimagine.comcongratulations dude!!!
i'll have a look at it later -
How to override pie graph label
Hi,
I have a dvt pie graph component on my page. I want to programatically set my pie graph label in a java bean.
For example, in my pie graph, there are 2 values, paid and unpaid. In my bean, I programatically format my paid amount, and I want to set the paid label to be "Paid (<formatted amount paid>)". I want to do the same for Unpaid.
How to I access and set the label for Paid and Unpaid series in my code? I could not use EL expression to do that as the label field of the <item> component of the graph do not understand EL expression.
Thank you for your time.
Any input is much appreciated.Hi,
How are you passing data to the graph? Are you trying to format the labels shown next to each slice of the pie, or the tooltips (shown when you mouse over the slice)?
You can use the dvt:sliceLabel tag to format your pie labels.
For example:
<dvt:sliceLabel textType="LD_TEXT">
<dvt:numberFormat decimalDigit="0"/>
</dvt:sliceLabel>
This will show text in the pie labels, and format the numbers displayed in the tooltip to have no decimal places.
Valid values for text type are:
LD_TEXT, LD_VALUE, LD_PERCENT, and LD_TEXT_PERCENT.
Hope this helps
Katia -
Give me sugguestion on my Java 2D App-JFDraw
Hi friends,
Please give me some guggestions on my Java2D application, JFDraw at http://www.jfimagine.com/en/download.htm,
Thanks a lot.
An introduction to JFDraw
JFDraw is a pure Java based graphics application and library package. JFDraw used a little features of Java2D, and expanded a lot of graph routines for more complex vector graph processing. You can run JFDraw under any operating systems that suport Java.
JFDraw is focused on vector graph drawing field. It can help you to complete your mechanical, electronic, architectural graphs drawing applications, or even business process or workflow graphs issues.
Written by pure text based editor(Windows NotePad & Unix VI), built by Sun Java Development Kit(JDK) 1.3.x and Apache Ant, JFDraw will offer you the opportunities to incorporate it into your graph applications, in binary library mode or source code mode.
web site: http://www.jfimagine.comThank you rkippen, I think I had made a mistake to publish such a ADS like message. so sorry for that. But I still want to know who would like such a software, and who will give me good suggestions so I can get power to enhance its functions.
Thanks. -
Help to stop Acordian from jumping to the top of the page
I was planning to use the accordian for a FAQ's page,
although I'm having a problem with it in IE.
The FAQ's page is fairly long and if i click a tab that I
have to scroll down to get to, then the accordian jumps back to the
start of the page and fixed the top edge of the accordian to the
top of the browser window (this is only happpening in IE7, and not
in Firefox, and I havent had chance to check it in IE6 yet.
Is there a way to stop this jump back to the top of the page
happening for IE?
To see the page i am working on and see what i mean, please
look at
http://82.110.105.91/osrec.com/demos/FAQs_DEMO/index.phpHi,
The behavior you see in IE is because of an IE bug that
appears when you try programatically focus an element to allow
keyboard navigation. If you don't need keyboard navigation, which
is default set on true for accordion, you can use an workaround to
avoid tha jump to the beginning of the page.
In the accordion constructor add this option
enableKeyboardNavigation set to false
(enableKeyboardNavigation:false).
Doing this that jump goes way, but you'll not be able to
navigate through accordion panels using keys.
Diana -
Programatically edit graph scale
Hi,
I kow that I can edit graph scale values simply mouse clicking on them, and typing new values.
Now I want to reproduce this behaviour programatically, but the problem is that I can't use the mouse in my application (only keyboard is available )
So, is there a way to programatically get focus to scale boundaries (x_min, x_max, y_min, y_max)?
I hope so...
I need to programatically setting them.
Using LV 6.1 on Linux Fedora Core 3
Vix
In claris non fit interpretatio
Using LV 2013 SP1 on Win 7 64bit
Using LV 8.2.1 on WinXP SP3
Using CVI 2012 SP1 on Win 7 64bit, WinXP and WinXP Embedded
Using CVI 6.0 on Win2k, WinXP and WinXP EmbeddedI'd have suggested this too - but you may be limited. Imagine you have set your control to increment by 0.01 (for precision reasons) - how long may it take if you want to set a value of 50?
By the way - building a num pad is not that complicated. Of course it takes time to accomplish, but I think you are most flexible.
Using LV8.0
Don't be afraid to rate a good answer... -
I'm adding some user enhancement (anti-screw-it-up functions) to insure the desired process is executed.
Primary question: If I have an event that is handles by a value change in a text control, (event happens when you hit Enter or exit control with mouse) will the event also occur if you exit the control by programatically changing the focus to another control ?
I'm going to try and set up a temp vi to test this but wanted to see if anyone had tried this and if it works or not. My other option is to set up multiple event cases but I was hoping to use a single case to handle everything.
A few details, I have a test system that tests a product automatically when the product is placed in a cradle and the cradle is moved into position and activates a prox sensor. At end of test, system waits for prox sensor to de-activate before resetting the system.
If a unit fails, there are rework options and the unit can be retested. When it fails, a label prints defining the failure modes and provides a failing serial number. When the unit is retested, the failing serial number is entered into a text control. I want the re-test sequence (queued up in the Event) to occur when either 1, a failing serial number is entered or two a button is pressed (with mouse) I'm pretty sure pressing a button would in turn automatically create the text control change event so my button can probably be a dummy button just for appearances.
Where the hole is if the user enters a failed serial # and doesn't exit the control and then engages a pump to start the test. I can use a 'Empty Path/String' function but the control will continue to show empty as if nothing was entered until the Enter key is pressed or the mouse is used to exit the control.
If I can generate the event by changing the focus, then it will insure that if a failing s/n is entered, the re-test sequence occurs and if nothing exists in that field, it performs a first time test.
A little long winded for sure but any thoughts are appreciated.
Can't really post any simple code as this feature is in my top level vi and I have a really big app that doesn't warrant uploading.
Doug
Doug
"My only wish is that I am capable of learning each and every day until my last breath."
Solved!
Go to Solution.Actually, changing the focus alone did not trigger the event but I was able to then utilize the Empty Path/String function to drive a Value(Signaling) node for the control.
Doug
"My only wish is that I am capable of learning each and every day until my last breath."
Attachments:
Event_Structure_Trials.vi 29 KB -
Create graph scale programatically
Another day, another problem.
I'm currently writing a holy grail tool for our UI development and have run into a problem. How do I add an X-Scale or an Y-Scale to an existing graph programatically?
I can iterate through the existing scales and store all relevant information from them but when I want to apply these infos to a target graph (regardless of type) I have hit a brick wall with regard to adding scales.
With sliders this was mush easier because we have the "Add slider" and "delete slider" methods.
Anyone have any ideas?
Scripting allowed.
Shane.
Say hello to my little friend.
RFC 2323 FHE-CompliantSeems like the only way. It's a bit of an ugly workaround, but whatever. Even if I was able to delete the scales I could start with a silly number (16 or so) and delete the ones not needed. I must try actually deleting scales to see if that works. I don't like the idea of graphs in production code (sold software) with zillions of scales when it only needs a few.......
Shane
Ps Nope, deleting doesn't seem to work.... Bugger.
This is a big hole in my design.
Say hello to my little friend.
RFC 2323 FHE-Compliant -
Setting Destination URI of a Pie Chart Graph Programatically-OA Framework
Hi All,
I have created a OF Page with the following Regions one under the other:
1. PageLayoutRN
2. HideShowHdr1 - Hide/Show Header
3. TblLayout1RN - Table Layout
4. Tbl1RowLayout1RN - Table Row Layout
5. Row1CellFormat1RN - Cell Format
6. Row2CellFormat2RN - Cell Format
Basically I have a page with a hide/show header, which contains a table with 1 Row and 2 Columns, where 1 column contains an advanced table and the 2nd contains a Graph (Pie Chart).
In the Row2CellFormat2RN, I have a GraphTable Region under the name PieChart1RN, which contains a graph called graph1 of style Pie.
As per the OA Framework Development Guide (744832.1) for R12.1.1 on Graphs (Page 255), a Code snippet is provided for setting the Destination URI of the graph programatically.
This code is as follows:
if(webBean.getUINodeName().equals("region3"))
OAGraphTableBean g2 =(OAGraphTableBean)webBean;
g2.setDisplayDataMarkers(0, true);
g2.setDrillDownUrl(0, "OA.jsp?page=/oracle/apps/ak/pages/FWK_TEST_AGR_SUM&akRegionApplicationId=601&sal={@Salary}");
//Test line graph with data markers and drill-down
g2.setDisplayToolTip(1,true);
g2.setDisplayDataMarkers(1, true);
g2.setDrillDownUrl(1,"http://www.oracle.com");
} I have tried using this code to set the Destination URI for my graph.
However, it does not work.
I do not understand which region name to specify as when I displayed the value contained in webBean.getUINodeName(), it refers to PageLayoutRN.
In short, I am not being able to set the Destination URI. Even though I have ensured the Bubble Text Property is set to True.
Can someone pls. help me into adapting this code to my context?
Thks
RaviHi Kumar,
I have already done it.
However, it still does not work.
The controller code looks like it does not recognise my graph region at all.
Thks
Ravi -
How do programatically set focus on a record other than the first one in a block?
My form performs the query for the block, and by default it leaves the focus on the first (top) record in the block. I'd like to have it focus on the last record in the block upon initial query.
i've tried Last_record and go_record in a post-block trigger but these builtins are restricted and you can't execute them from post block triggers. i don't see any block property things that would influence this either... how can i do it? thanks.i just figured out the answer to my own question... in the when new block instance trigger, there's an execute_query statement, and i simply put last_record statement after that...
-
Can we show / hide the minor grid in a graph programatically?
I know how to do it statically and I know how to show / hide the major grid programatically. I am using labview 6.0.
thanksthierry_d,
This feature is not available in LabVIEW 6.0.x, but there is a minor grid color property in LabVIEW 6.1. If you really need this property, then I would suggest upgrading to LabVIEW 6.1.
Randy Hoskin
Applications Engineer
National Instruments
http://www.ni.com/ask -
Hiding plots programatically in XY graphs
My data acquisition plots five y values along a time axis. There are occasions when the number of plots is less than this due to user set-up of the test. The problem that I have is that the XY graph continues to plot all five values with the empty values drawn on the zero line of the y-axis. Whenever I try to disable the visible property of the plots it doesn't seem to recognise them as active plots and delivers an error code saying 'Invalid property...."etc. The plots can be made invisible only if the user choose to acquire 5 sets of data. Can you help?
Make sure you are using the order: Set Active Plot -> Set Active Plot's Property
As in the attached LV 6.1 example
2006 Ultimate LabVIEW G-eek.
Attachments:
Vis_Graph.vi 45 KB -
Best way to programatically re-size graphs?
I have a window that pops up, containing X-Y graphs, that are say, 600 pixels wide.
Under some circumstances, I want to reduce this to say, 400 pixels, and uncover a cluster of numeric displays occupying the other space.
I would like to set the BOUNDS.WIDTH of the graph so that it extends right up to the POSITION.LEFT of the cluster.
But I can't adjust the BOUNDS.WIDTH of the graph itself (that property is read-only).
I can adjust the PLOT AREA.SIZE.WIDTH of the graph, which will affect the BOUNDS.WIDTH.
But I can't use that for calculations, because I don't know the margin between the plot area and the graph bounds.
I want it to work when the user re-sizes the window (All objects are scaled when window re-siz
es). He may resize the window, close it, open it again and the size remains as he left it. That means I can't use absolute pixel values to move things around.
I have thought of using decorations: a hidden rectangle that's the size of the small plot area, and another one that's the size of the large plot area. Then set the plot area's SIZE.WIDTH to the width of the small or large decoration. They decorations would scale along with everything else, and all would be OK.
1... Does anyone have a better / different idea?
2... If not, how should I get the reference to the decorations? They can't be named. Using the VI reference, I would have to pick out decorations #3 and #4 or something (there are other decorations already present). That just seems a bit fragile. How can I move these new ones to be #0, and #1 ??
Steve Bird
Culverson Software - Elegant software that is a pleasure to use.
Culverson.com
Blog for (mostly LabVIEW) programmers: Tips And TricksHi,
Here's what I've used to do this;
1) Get the DesiredSize (bottom-top, right-left). The origin can be set, so
that should be easy...
2) Calculate the "Bounds" - DesiredSize.
3) Add the "PlotAreaSize" to the result.
4) Put it in the "PlotAreaSize".
The quoted names are property values of the graph. Just a tip: put it all in
a subvi that uses a refernce to the control.
The logic behind this is that the difference between the total bounds, and
the plot area is constant.
Regards,
Wiebe.
"CoastalMaineBird" wrote in message
news:[email protected]...
> I have a window that pops up, containing X-Y graphs, that are say, 600
> pixels wide.
>
> Under some circumstances, I want to reduce this to say, 400 pixels,
> and uncover a cluster of numeric displays occupying the other space.
>
> I would like to set the BOUNDS.WIDTH of the graph so that it extends
> right up to the POSITION.LEFT of the cluster.
>
> But I can't adjust the BOUNDS.WIDTH of the graph itself (that property
> is read-only).
>
> I can adjust the PLOT AREA.SIZE.WIDTH of the graph, which will affect
> the BOUNDS.WIDTH.
>
> But I can't use that for calculations, because I don't know the margin
> between the plot area and the graph bounds.
>
> I want it to work when the user re-sizes the window (All objects are
> scaled when window re-sizes). He may resize the window, close it,
> open it again and the size remains as he left it. That means I can't
> use absolute pixel values to move things around.
>
> I have thought of using decorations: a hidden rectangle that's the
> size of the small plot area, and another one that's the size of the
> large plot area. Then set the plot area's SIZE.WIDTH to the width of
> the small or large decoration. They decorations would scale along
> with everything else, and all would be OK.
>
>
> 1... Does anyone have a better / different idea?
>
> 2... If not, how should I get the reference to the decorations? They
> can't be named. Using the VI reference, I would have to pick out
> decorations #3 and #4 or something (there are other decorations
> already present). That just seems a bit fragile. How can I move
> these new ones to be #0, and #1 ??
Maybe you are looking for
-
IPMA 2nd Assistant logoff problem
Dear all, I have a manager with 2 assistants. I can logon both assistants, and 1 will be the primary assistant. if she goes offline, the second one will take the calls from her own phone. but the strange thing is that if both secretaries are logged o
-
Dowload app from app store stay in wait status
Since i update to ios 5.0.1 on my ipad2 everytime if i want to download apps form the app store the status of the downlaod proces stays in "wait" status and the app will not be installed.
-
I have contacted Report A Problem about getting refunds from apps that don't work and I haven't received those refunds yet.
-
Deploying map viewer on tomcat
hello, because there was no useable result of all the past threads handling this topic, i would like to ask again. Is there any experience in deploying the Oracle Map Viewer on a Tomcat server? Sure, it is possible to deploy the ear/war file at Tomca
-
Error when clicking on personalise button
Hi Gurus, can you please suggest me and provide me solution on the below issue. when i am clicking on personalise button on header area in web-ui i am getting the following error. The *URL http://gotcrmdev01.wksc.local:8030/sap/bc/bsp/sap/crm_ui_fram