The Origin Forum
File Exchange
Try Origin for Free
The Origin Forum
Home | Profile | Register | Active Topics | Members | Search | FAQ | Send File to Tech support
Username:
Password:
Save Password
Forgot your Password? | Admin Options

 All Forums
 Origin Forum
 Origin Forum
 Contour Plot: Delta of z-Values
 New Topic  Reply to Topic
 Printer Friendly
Author Previous Topic Topic Next Topic Lock Topic Edit Topic Delete Topic New Topic Reply to Topic

sebbey

Germany
70 Posts

Posted - 08/14/2012 :  03:05:39 AM  Show Profile  Edit Topic  Reply with Quote  View user's IP address  Delete Topic
Origin Ver. 8.6.0G
Operating System: Windows Professional 7

Hi everyone,

I would like to draw/merge 2 Contour Plots into one Graph window (identical axis scales).
Is it possible to only show the differences(delta) of the z-values in this merged plot?

In my case the z-values describe efficiencies. If it was possible to plot the delta of these efficiencies, you could easily see which efficiency is higher in the area of interest.

Does anyone have an idea?

Thank you in advance!
Sebbey

Hideo Fujii

USA
1582 Posts

Posted - 08/14/2012 :  11:21:13 AM  Show Profile  Edit Reply  Reply with Quote  View user's IP address  Delete Reply
Hi Sebbey,

Maybe I don't understand fully what you want to achieve.

If your purpose is to show the difference of two contours at the corresponding xy coordinates,
I think, you can just make a single matrix by subtracting one from the other. (If your original
data is in XYZ worksheet, you need to convert the worksheet to a matrix.) Then, you can make
a single contour from this.

If your purpose is to demonstrate two contours in a single 3D frame, you can merge two 3D Colormap
Surface with top contour for one, and the bottom contour for the other with hidden surface plot;
then you can merge two 3D graphs (with the same scale and same orientation).
Please see the screenshot below.



I hope this helps your project.

--Hideo Fujii
OriginLab

Edited by - Hideo Fujii on 08/14/2012 11:22:13 AM
Go to Top of Page

sebbey

Germany
70 Posts

Posted - 08/15/2012 :  09:20:00 AM  Show Profile  Edit Reply  Reply with Quote  View user's IP address  Delete Reply
Hi Hideo,

I'm trying to show the difference of two contours. I'm not sure, but I think the Data I use to create the contour plots cannot be converted to a matrix.

It looks like this:



I have two Datasets (in 2 Workbooks) that look like this. I create a contour plot of each dataset by clicking the following button.



After I created the two contour plots I merge the two graph windows, which brings me to this:



In the overlapping areas I would like to see the difference of the z values.

I hope I was able to explain my problem a bit better this time.

Thank you,
Sebbey
Go to Top of Page

Hideo Fujii

USA
1582 Posts

Posted - 08/15/2012 :  6:24:15 PM  Show Profile  Edit Reply  Reply with Quote  View user's IP address  Delete Reply
Hi Sebbey,

> I'm not sure, but I think the Data I use to create the contour plots cannot be converted to a matrix.

Do you mean that any gridding method and parameters (in "Worksheet> Convert to Matrix> XYZ Gridding" menu) doesn't produce a good result?
I wonder why you couldn't convert. Could you please explain a bit further regarding this issue? Also, maybe you can send your data in Origin file to us from:
http://originlab.com/index.aspx?go=Support&pid=752

Thanks a lot!

--Hideo Fujii
OriginLab
Go to Top of Page

sebbey

Germany
70 Posts

Posted - 08/16/2012 :  10:27:11 AM  Show Profile  Edit Reply  Reply with Quote  View user's IP address  Delete Reply
Hi Hideo,

I was now able to convert my Data to a Matrix-Sheet. But when I create a contour Plot with the Matrix Data it does not look like the contour plot I created with the XYZ Data. Which makes sense, since I created a symmetrical Matrix. But I would like to keep the form I had before.
in the picture below, you can see the contour graph created with the XYZ Data on top and the contour graph created with the Matrix Data beneath it.



Is there a way to define a contour boarder. If I right click on the contour Graph to open the properties menu, there is no such option.

Thank you very much!
Sebbey
Go to Top of Page

sebbey

Germany
70 Posts

Posted - 08/17/2012 :  04:11:32 AM  Show Profile  Edit Reply  Reply with Quote  View user's IP address  Delete Reply
Hi Hideo,

I have another question. As I described in my previous post, I was able to convert my XYZ Data to a Matrix Sheet. Now I want to substract the Matrix Data of one Sheet (MSheet1) from the Matrix Data of the other Sheet (MSheet2). The Result of this substraction should be shown in MSheet3. How can I do this, is there an easy way?

Thanks for your help!!!

Sebbey
Go to Top of Page

Hideo Fujii

USA
1582 Posts

Posted - 08/17/2012 :  09:56:54 AM  Show Profile  Edit Reply  Reply with Quote  View user's IP address  Delete Reply
Hi Sebbey.

This part is easy: In the Script window, you can type the following command (assuming
MBook1, 2, and 3 have the same dimensions.):

   MBook3=MBook1-MBook2

Regarding the shapes of the (triangulated input) matrix and (random-gridded output) matrix,
the later corresponds to the former "layer boundary" (instead of "data boundary")
though they are based on quite different algorithmic approaches. Probably we should
find some way to mask the outside of the common data boundaries of your original data;
but I have so far no idea how to achieve it. Does someone have any idea?

--Hideo Fujii
OriginLab

Edited by - Hideo Fujii on 08/17/2012 09:57:47 AM
Go to Top of Page

sebbey

Germany
70 Posts

Posted - 08/17/2012 :  10:40:17 AM  Show Profile  Edit Reply  Reply with Quote  View user's IP address  Delete Reply
Hi Hideo,

ok, now it works. I tried to use this:

MSheet3=MSheet1-MSheet2

But If I open a new MatrixBook for each Dataset and use your command, it works.

Only one problem remaining:)

sebbey

Go to Top of Page

sebbey

Germany
70 Posts

Posted - 08/21/2012 :  10:03:20 AM  Show Profile  Edit Reply  Reply with Quote  View user's IP address  Delete Reply
Hi again,

since I still could't come up with a solution to my problem, I was wondering wether one of you guys had an idea in the meantime.

quote:
Regarding the shapes of the (triangulated input) matrix and (random-gridded output) matrix,
the later corresponds to the former "layer boundary" (instead of "data boundary")
though they are based on quite different algorithmic approaches. Probably we should
find some way to mask the outside of the common data boundaries of your original data;
but I have so far no idea how to achieve it. Does someone have any idea?


Thanks again and greetz from germany,
sebbey
Go to Top of Page

Hideo Fujii

USA
1582 Posts

Posted - 08/21/2012 :  11:54:05 AM  Show Profile  Edit Reply  Reply with Quote  View user's IP address  Delete Reply
Hi,

Our software designer/developers may come up to a convenient feature in the future release. I hope you keep tuned in sight.

Meanwhile, you can try the following procedure...
1) Make a contour from your XYZ worksheet. 
2) On your XYZ contour, left-click on the plot to show a pink dot at the center. 
  Right-click it, and choose "Extract Contour Lines". It creates a worksheet 
  which contains the data boundary (at the lowest level). Edit this worksheet to 
  make it have only the outmost boundary.
3) Plot a data boundary, and set "Fill Area Under Curve" to "Exclusive broken by 
  missing values" to make a mask plate.
4) Convert the XYZ worksheet to matrix, and make a contour from it.
5) Make a subtracted matrix from two converted ones, and create a contour.
6) Compose this subtracted contour and two mask plates by merging graph windows.



I know this is a cumbersome way, but so far only work-around I can think of.

--Hideo Fujii
OriginLab
Go to Top of Page

sebbey

Germany
70 Posts

Posted - 08/22/2012 :  02:08:09 AM  Show Profile  Edit Reply  Reply with Quote  View user's IP address  Delete Reply
Hi Hideo,

first of all thank you very much for your effort!!

I'll try your workaround and let you know if it works.

Sebbey
Go to Top of Page

sebbey

Germany
70 Posts

Posted - 08/22/2012 :  10:13:07 AM  Show Profile  Edit Reply  Reply with Quote  View user's IP address  Delete Reply
Hi Hideo,

I was able to follow your instructions without any problems, but I'm not sure if I like the result.

To ensure that your procedure is creating the right graph, I made a little test:

1. I created a contour plot with xyz data
2. Then I created the data boundary
3. After that I converted my data to a matrix book and created a contour plot with the matrix data
4. Now I merged the three created graphs( xyz contour, data boundary, matrix contour), played with the layer transparency, adapted the axis scales and contour levels.

This is what I get:



The two contour plots should be identical, since they were created out of the same data. But they are not.
Is there a mistake in my thinking or is it a bug, or ....?

What do you think?

Thank you,
sebbey
Go to Top of Page

Sam Fang

291 Posts

Posted - 08/22/2012 :  11:53:01 PM  Show Profile  Edit Reply  Reply with Quote  View user's IP address  Delete Reply
You can check whether same colormap levels are used within the boundary for two contours.

You can also adjust the XYZ gridding methods or settings when you convert XYZ data to matrix.

Sam
OriginLab Technical Services

Edited by - Sam Fang on 08/23/2012 01:33:00 AM
Go to Top of Page

sebbey

Germany
70 Posts

Posted - 08/23/2012 :  03:35:00 AM  Show Profile  Edit Reply  Reply with Quote  View user's IP address  Delete Reply
Hi Sam,

the colormap levels are the same, but I'll try to adjust the XYZ gridding methods and let you what happened.

Greetz,
sebbey
Go to Top of Page

Hideo Fujii

USA
1582 Posts

Posted - 08/23/2012 :  3:38:02 PM  Show Profile  Edit Reply  Reply with Quote  View user's IP address  Delete Reply
Hi sebbey,

Yes, please try various ways. Here are a few my comments:

1) The XYZ contour and the matrix contour after gridding are quite different algorithms.
The former is like a mosaic with triangle tiles, but the later is with rectangle tiles.
2) In general, more input XY points, and appropriately larger output matrix dimensions, then gridding works better.
3) Depending on the gridding algorithm, the result could be much worse or
much better. My feeling is that Thin Plate Spline often does a good job.
4) Especially gridding result outside of the XY boundary is not reliable.
5) Even XYZ contour (by triangulation) does not necessary mean "perfect".

See the screenshot below.



--Hideo Fujii
OriginLab

Edited by - Hideo Fujii on 08/23/2012 5:04:11 PM
Go to Top of Page

Mulvenna

Germany
46 Posts

Posted - 11/26/2013 :  09:55:27 AM  Show Profile  Edit Reply  Reply with Quote  View user's IP address  Delete Reply
Hi,

I am now working on the script that Sebbey was last year. I am having the same problem displaying the delta z contours.

The datasets that I am using are never the same size. How can I ensure that the matrices have the same dimensions when converting the data to matrix format?

Regards,
Mulvenna
Go to Top of Page

Hideo Fujii

USA
1582 Posts

Posted - 11/27/2013 :  10:28:27 AM  Show Profile  Edit Reply  Reply with Quote  View user's IP address  Delete Reply
HI Mulvenna,

You can set the row and column numbers in the dialog box of the gridding tool.



Is this okay?

--Hideo Fujii
OriginLab
Go to Top of Page

Mulvenna

Germany
46 Posts

Posted - 11/27/2013 :  10:42:10 AM  Show Profile  Edit Reply  Reply with Quote  View user's IP address  Delete Reply
Yes this is great, thanks. Thank you for your previous response as well.

At the minute, I have a script which

- Converts each dataset to matrix form using the "thin plate spline" method.

- Subracts the matrices and plots the resultant data.

- Plots the xy points from original datasets and uses fill area to mask the "unwanted" regions.

But when I pick individual points and manually calculate the "actual" difference at any given point, the result is not very accuarate at all. Is there something that I am doing wrong?


Go to Top of Page

Sam Fang

291 Posts

Posted - 12/02/2013 :  10:33:21 PM  Show Profile  Edit Reply  Reply with Quote  View user's IP address  Delete Reply
Hi Mulvenna,

In 91, we provided a new X-Function interp2 to interpolate given xy data on xyz data. So you needn't use XY gridding to convert in into a matrix and mask the area outside the boundary.

To use the tool, make the worksheet active, select Analysis: Mathematics: Interpolate Z from XY from Origin menu. You can interpolate two same xy data on two xyz data. Then subtract two interpolated xyz data and plot the contour.

Sam
OriginLab Technical Services

Edited by - Sam Fang on 12/02/2013 10:34:48 PM
Go to Top of Page

Mulvenna

Germany
46 Posts

Posted - 12/03/2013 :  02:10:29 AM  Show Profile  Edit Reply  Reply with Quote  View user's IP address  Delete Reply
Hi Sam,

Thank you for the help but do you mean the function was added in version 9.1?

I am currently running version 8.6.1 and I cant seem to find what you are talking about?

Mulvenna
Go to Top of Page

Sam Fang

291 Posts

Posted - 12/03/2013 :  02:48:59 AM  Show Profile  Edit Reply  Reply with Quote  View user's IP address  Delete Reply
Yes. It need 91 version. You can also download a demo version to try it.

For "not accuarate" problem, can you send us your data and give us an example for the problem? We can see whether it can be fixed.

To send files to us, click Send File to Tech support button in the top right of the forum.

Thanks.

Sam
OriginLab Technical Services

Edited by - Sam Fang on 12/03/2013 02:52:04 AM
Go to Top of Page

omidasa

Iran
2 Posts

Posted - 05/09/2015 :  02:41:30 AM  Show Profile  Edit Reply  Reply with Quote  View user's IP address  Delete Reply
Hi
How could I contour plot data which contain more than one columns for y? I have one column for X, 50 columns for y and one column for z.
Go to Top of Page

cdrozdowski111

USA
247 Posts

Posted - 05/09/2015 :  08:47:07 AM  Show Profile  Edit Reply  Reply with Quote  View user's IP address  Delete Reply
Omidasa,

Can you provide a little insight into the structure of your data. For example, what do the X, Y, and Z data correspond to?
Go to Top of Page

lisawdegregorio

USA
1 Posts

Posted - 05/15/2015 :  03:52:15 AM  Show Profile  Edit Reply  Reply with Quote  View user's IP address  Delete Reply
Very nice graph code, please do more posts related to this types of array because i am unable to fully understand about graphics .
Go to Top of Page

omidasa

Iran
2 Posts

Posted - 05/18/2015 :  11:55:28 AM  Show Profile  Edit Reply  Reply with Quote  View user's IP address  Delete Reply
cdrozdowski111

Thanks a lot. I've used two files and merge them. It's working now.
Go to Top of Page
  Previous Topic Topic Next Topic Lock Topic Edit Topic Delete Topic New Topic Reply to Topic
 New Topic  Reply to Topic
 Printer Friendly
Jump To:
The Origin Forum © 2020 Originlab Corporation Go To Top Of Page
Snitz Forums 2000