LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Structured Data Visualisation ??

Hello All,

I would like to apologize up front if the topic name is false or dosent match i didnt know what to give .

Now to my problem I am doing master thesis in a company in labview and my task is to make a tool that reads an Xml document and allows the user to operate on it . To display data I am using a Multi coloum list box which is functional even though a bit bulky and as I am doing my master thesis my professor and the company wants some thing more fancy I also though of using a Tree and table but its still bulky although I am keeping it as option B . 

Can any one suggest any other structutres ??

and also some reading material in this feild is very welcome .

When i search Data Visualisation in net all I see are charts and numeric data but nothing on text data or data that is in an tree form as in xml .

if i am not clear with my explanation please ask I will try to explain it better

Thanks in advance.  

0 Kudos
Message 1 of 12
(2,528 Views)

What is the end user going to do with the data? That might drive how you want to present the data. Why are you using LabVIEW for this purpose? It seems to me that if you are presenting information that a database would have been a better way to present and store the information.

 

Maybe if we understand what you are hoping to do with this tool we could make better suggestions.

Tim
GHSP
0 Kudos
Message 2 of 12
(2,470 Views)

Hi,

For a structured set of data, the tree view is probably the best way.

You can find some example in LabVIEW (Help/Find Examples... search with the keyword tree).

For a more "fancy" display, maybe the system palett can do the trick. With the system treeview control, the display will match your version of Windows.

If you prefer to customize a classic or modern tree, right-click on the control and select "Advance/Customize.." and you will be able to modify the treeview.

Note that you can also add your own pictures to the tree nodes.

Hope it helps,


Jeremy CHIFFE

Certified LabVIEW Architect (2016)


0 Kudos
Message 3 of 12
(2,462 Views)

Hi Tim,

What the end user wants is: to see and go through  and filter data according to his needs and edit and export the data , and I guess some other database might be able to do this but i dont know if i cabuild my own filters in it such as getting all the nodes of one type having the same attribute as a node of another kind .and also all the guis in the company are made in labview and the people working there know how to program in labview which would be use full if they want to add some features.

 

0 Kudos
Message 4 of 12
(2,448 Views)

Something like this?

2019-09-26.png

Based on the Populate Tree example i could use the Read XML to traverse all child nodes and extract info. It took some effort.

XML as tree.png

The extraction is recursive so a node lists all its children before the next node does the same thing.

Get node info.png

/Y

G# - Award winning reference based OOP for LV, for free! - Qestit VIPM GitHub

Qestit Systems
Certified-LabVIEW-Developer
0 Kudos
Message 5 of 12
(2,432 Views)

Thank you Yarnmeda,

i have already thought of using a tree but I have 2 problems with it

1) the output of tree is a Text string even thought we can get the parent nodes its still a hassel to go through my arrays to change a specific element 

2) my Document is very complex and big with about 2000 nodes and each node having differnt no of attributes and again child nodes with again diifer no of attributes . 

I am not allowed to share the data so i am trying to make a sample and ask my company people to go through it and say its ok to share . i will try to post it by evening 

in mean time can any one suggest me some refernce books that i can go through on representation of such data . all i could find on net was about numeric data or unstructured txt data.

thanks in advance 🙂 

0 Kudos
Message 6 of 12
(2,413 Views)

I do not understand what you're after and what the real problem is.

You have data in XML, that's always strings as it's a text document.

If you want to keep the datatype you'll need to use e.g. an array of clusters, an array of variants or an array of classes. 

Still, your description is quite vague, so you'll need to explain better and give some example.

/Y

G# - Award winning reference based OOP for LV, for free! - Qestit VIPM GitHub

Qestit Systems
Certified-LabVIEW-Developer
0 Kudos
Message 7 of 12
(2,400 Views)

I am Attaching an xml file so that you can see the format of the xml more clearly .

Now i want to represent machines , materials and their attributes . right now i am doing this using a table i am reading out the xml and storing values in a sritng array and filling the table with it as you can see i did the same for materials . I am sorry for not being clear  I am still trying to figure out all use cases the coustomer would use it for. 

Regarding to tree i would like to keep it as a table as the data is too large and frankly I dont want to cange the formating i did 

but i am planning to use tree for main nodes like material and machines and a table that displays selected machines and materials.

Actually i am very confused as to what I am required to do and how well i can represent data so i am looking for some reading material in this direction could you suggest any book ??

 

 

 

i am unable to attach a xml file so here is the xml text

<?xml version="1.0" encoding="UTF-8"?>
<Format>
<machine identifier="Rat" name="PR30" class="R30" Quark="up">
<Size x="920" y="1850"/>
<OG Name="robert" Place="roterdam" Animal="rat" Thing="rocket"/>
</machine>

<machine identifier="Cat" name="PC30" class="C30speed" Quark="down" >
<Size x="540" y="1960"/>
</machine>

<machine identifier="Bradypus pygmaeus" name="three-toed sloth" class="S3" subclass="3+toes" Quark="strange">
<Size x="1990" y="180"/>
</machine>
<machine identifier="Choloepus didactylus" name=" two-toed sloth" class="S2" subclass="2+toes" Quark="charm">
<Size x="1990" y="180"/>
</machine>
<machine identifier="Bradypus torquatus" name="Maned sloth " class="SM" subclass="man" Quark="mager">
<Size x="1920" y="1080"/>
<OG Name="robert" Place="roterdam" Animal="rat" Thing="rocket"/>
</machine>

<material identifier="material_1_id" name="Material_1">
<Childnode_I version="2" name="Set 2" otherAttr="Attribute" >
<Childnode_II Attribute="1"/>
<Childnode_II Attr2="2"/>
<machine class="S3"/>
</Childnode_I>
<Childnode_I version="1" name="Set 1" otherAttr="Attribute">
<Childnode_II Attribute="1"/>
<machine class="S2"/>
</Childnode_I>
</material>
<material identifier="material_2_id" name="Material_2" >
<Childnode_I version="2" name="Set 2" otherAttr="Attribute" >
<Childnode_II Attribute="1"/>
<Childnode_II Attr2="2"/>
<machine class="S3"/>
</Childnode_I>
<Childnode_I version="1" name="Set 1" otherAttr="Attribute">
<Childnode_II Attribute="1"/>
<machine class="S2"/>
</Childnode_I> </material>
<!--More nodes with abobe pattern and some with differnt pattern-->
</Format>

 

 

 

0 Kudos
Message 8 of 12
(2,390 Views)

Using a table to show/represent the data is probably perfectly fine. Personally i like arrays of cluster if data is mixed.

Separating Machines and Materials to 2 tables (separate tabs in a tab control?) can help with organization.

 

"Actually i am very confused as to what I am required to do and how well i can represent data"

Yes, that kind of shines through and is probably the root of the problem. 

 

This isn't really questions you should guess, but it should be part of the program specification. In this case you'll need to create one by interviewing the recievers to get a good grasp of what they're actually after. Maybe some of your fears are a non-issue since they simply don't want that functionality, but some others will be hell when they want to group or filter data on strange criteria, or something. 

So, as you mentioned:

Which data should be shown? 

How should it be shown? 

How should it be interacted with?

Which manipulations should be possible?

And so on ...

 

Notice that LV has nothing to do with this, it's 'just' the tool you use to implement it.

 

/Y

G# - Award winning reference based OOP for LV, for free! - Qestit VIPM GitHub

Qestit Systems
Certified-LabVIEW-Developer
0 Kudos
Message 9 of 12
(2,384 Views)

Thanks for your insight o:-) thats very helpful .I guess your are right . I will have to make an appointment with the concerned people but the problem is there are in vacation and wont return till nextr two weeks . I get it this has nothing to do with labview but is there any reading maerial that you can suggest me in realtion to Data visualisation??

0 Kudos
Message 10 of 12
(2,376 Views)