The Origin Forum
File Exchange
The Origin Forum
Home | Profile | Register | Active Topics | Members | Search | FAQ | Send File to Tech support
 All Forums
 Origin Forum
 Origin Forum
 Contour Plot: Delta of z-Values

Note: You must be registered in order to post a reply.
To register, click here. Registration is FREE!

Anti-Spam Code:
Format Mode:
Format: BoldItalicizedUnderlineStrikethrough Align LeftCenteredAlign Right Horizontal Rule Insert HyperlinkInsert EmailInsert Image Insert CodeInsert QuoteInsert List

* Forum Code is ON
Smile [:)] Big Smile [:D] Cool [8D] Blush [:I]
Tongue [:P] Evil [):] Wink [;)] Clown [:o)]
Black Eye [B)] Eight Ball [8] Frown [:(] Shy [8)]
Shocked [:0] Angry [:(!] Dead [xx(] Sleepy [|)]
Kisses [:X] Approve [^] Disapprove [V] Question [?]

Check here to subscribe to this topic.

T O P I C    R E V I E W
sebbey Posted - 08/14/2012 : 03:05:39 AM
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!
20   L A T E S T    R E P L I E S    (Newest First)
Sam Fang Posted - 12/03/2013 : 02:48:59 AM
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.


OriginLab Technical Services
Mulvenna Posted - 12/03/2013 : 02:10:29 AM
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?

Sam Fang Posted - 12/02/2013 : 10:33:21 PM
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.

OriginLab Technical Services
Mulvenna Posted - 11/27/2013 : 10:42:10 AM
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?

Hideo Fujii Posted - 11/27/2013 : 10:28:27 AM
HI Mulvenna,

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

Is this okay?

--Hideo Fujii
Mulvenna Posted - 11/26/2013 : 09:55:27 AM

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?

Hideo Fujii Posted - 08/23/2012 : 3:38:02 PM
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
sebbey Posted - 08/23/2012 : 03:35:00 AM
Hi Sam,

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

Sam Fang Posted - 08/22/2012 : 11:53:01 PM
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.

OriginLab Technical Services
sebbey Posted - 08/22/2012 : 10:13:07 AM
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 Posted - 08/22/2012 : 02:08:09 AM
Hi Hideo,

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

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

Hideo Fujii Posted - 08/21/2012 : 11:54:05 AM

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
sebbey Posted - 08/21/2012 : 10:03:20 AM
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.

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 Posted - 08/17/2012 : 10:40:17 AM
Hi Hideo,

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


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

Only one problem remaining:)


Hideo Fujii Posted - 08/17/2012 : 09:56:54 AM
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.):


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
sebbey Posted - 08/17/2012 : 04:11:32 AM
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 Posted - 08/16/2012 : 10:27:11 AM
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!
Hideo Fujii Posted - 08/15/2012 : 6:24:15 PM
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:

Thanks a lot!

--Hideo Fujii
sebbey Posted - 08/15/2012 : 09:20:00 AM
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,
Hideo Fujii Posted - 08/14/2012 : 11:21:13 AM
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

The Origin Forum © 2008 Originlab Corporation Go To Top Of Page
Snitz Forums 2000