Author |
Topic  |
|
AKazak
Russia
1205 Posts |
Posted - 12/09/2020 : 09:31:06 AM
|
OriginPro 2019b (64-bit) 9.6.5.169 Windows 7 Pro x64 SP1
Greetings!
I noticed that Heat Map plots use Virtual Matrix (VM) as a container of data and axes labels. However, my experience shows that sometimes the link between VM (seems to be the same as loose datasets) and the host worksheet breaks. In the latter case updates in the worksheet (for example axes tick labels) do not reflect in the Heat Map plot.
Is there a way to avoid using VMs to prepare a Heat Map plot?
--- Andrey |
Edited by - AKazak on 12/09/2020 09:44:54 AM |
|
snowli
USA
1424 Posts |
Posted - 12/09/2020 : 09:44:11 AM
|
If your data has evenly distributed X and Y values, u can import data into Matrix window and then plot heatmap.
Thanks, Snow |
 |
|
AKazak
Russia
1205 Posts |
Posted - 12/09/2020 : 09:46:05 AM
|
quote: Originally posted by snowli
If your data has evenly distributed X and Y values, u can import data into Matrix window and then plot heatmap. Thanks, Snow
OK. Unfortunately, this is not my case. I have n rows by m columns.
--- Andrey |
 |
|
AKazak
Russia
1205 Posts |
Posted - 12/09/2020 : 09:48:59 AM
|
Please explain: how do VM1.sub(x) and VM1.sub(y) in Tick Labels tab work?
--- Andrey |
 |
|
snowli
USA
1424 Posts |
Posted - 12/09/2020 : 10:07:18 AM
|
No row, M column is fine but they need to be evenly spaced. E.g. it can't be 10 20 30 32 34 36. (not all incrementing by 10)
Also matrix only accept numeric X and Y.
So sometimes u have to use Virtual Matrix. if you have cases the link is gone, please email the project for us to look.
Thanks, Snow
|
 |
|
snowli
USA
1424 Posts |
Posted - 12/09/2020 : 10:32:12 AM
|
It refers to x and y text of virtual matrix.
E.g. in plotvm dialog, your specified x or y is text, sub(x) or sub(y) will refer to such text info. If you specify x or y to be number, date, time, it will not use it.
U can open Help: Learning Center. Type heatmap to see examples using sub(x) or sub(y) and not using them.
Thanks, Snow |
 |
|
AKazak
Russia
1205 Posts |
|
snowli
USA
1424 Posts |
Posted - 12/09/2020 : 12:23:29 PM
|
Thanks for the project.
There are X and Y tick labels in graph1 already based on long name and column A.
Thanks, Snow |
 |
|
AKazak
Russia
1205 Posts |
Posted - 12/09/2020 : 3:45:42 PM
|
quote: Originally posted by snowli
Thanks for the project.
There are X and Y tick labels in graph1 already based on long name and column A.
Thanks, Snow
In the project, the Heat Maps uses VM as a source for data and tick labels:


--- Andrey |
Edited by - AKazak on 12/09/2020 10:38:26 PM |
 |
|
AKazak
Russia
1205 Posts |
Posted - 12/09/2020 : 10:42:52 PM
|
Now I try to use datasheet directly.
Y-axis settings work well and produce the desired result:

However, similar settings for X-axis don't deliver the desired results:

The latter produces this:

--- Andrey |
 |
|
snowli
USA
1424 Posts |
Posted - 12/10/2020 : 10:25:37 AM
|
Heatmap is from virtual matrix so it can't use other column heading. There is only one x info. and one y info. which you specified in plotvm dialog. So in virtual matrix, there is only one x and one y info.
If in plotvm, you specify long name as X. You can't specify column comments as tick label since we don't store such info. in virtual matrix (VM). You can choose Tools: Virtual Matrix Manager to see corresponding matrix's X, Y and Z info.
You will have to specify comments row as X in plotvm if u want to show comments as tick label.
Maybe you can send a user story project with such need since in your opju file there is only long name and it's already been used. The reason why you think text from dataset works is that column A is also what you specified as x in plotvm. If u specify column E, it will not work.
I created ORG-22979 for your request and will check with our developer if it's possible to improve so we can use data from worksheet directly. Or maybe if we can block confusing entries in dropdown list to avoid confusion.
Thanks, Snow
|
 |
|
AKazak
Russia
1205 Posts |
Posted - 12/10/2020 : 12:48:15 PM
|
quote: Originally posted by snowli
Heatmap is from virtual matrix so it can't use other column heading. There is only one x info. and one y info. which you specified in plotvm dialog. So in virtual matrix, there is only one x and one y info.
If in plotvm, you specify long name as X. You can't specify column comments as tick label since we don't store such info. in virtual matrix (VM). You can choose Tools: Virtual Matrix Manager to see corresponding matrix's X, Y and Z info.
You will have to specify comments row as X in plotvm if u want to show comments as tick label.
Maybe you can send a user story project with such need since in your opju file there is only long name and it's already been used. The reason why you think text from dataset works is that column A is also what you specified as x in plotvm. If u specify column E, it will not work.
I created ORG-22979 for your request and will check with our developer if it's possible to improve so we can use data from worksheet directly. Or maybe if we can block confusing entries in dropdown list to avoid confusion.
Thanks, Snow
Thank you. I will try to share a project with the broken VM links. The idea is that Heat Map should reflect changes in the worksheet. However, sometimes this live link breaks down.
Ideally, Heat Map should take data directly from the worksheet without an intermediate data container such as VM.
Can you list all plot types requiring an intermediate VM, please?
--- Andrey |
 |
|
minimax
356 Posts |
Posted - 12/11/2020 : 03:35:27 AM
|
Hi AKazak,
Plot type has no restriction on VM.
Basically all plots (contour, heatmap, 3d scatter, 3d bar, 3d surface) which can be created from matrix window is able to create from VM.
As Snow mentioned before, VM is mainly used to deal with the variation of XY data.
Origin's matrix window requires the XY coordinate data must be even spaced and numeric: With a matrix window active, select Matrix menu - Set Dimension/Labels, there is only min/max values to configure the XY data.
When it is not case, you will have to put the data on workbook window. |
 |
|
AKazak
Russia
1205 Posts |
|
AKazak
Russia
1205 Posts |
Posted - 12/14/2020 : 11:09:49 AM
|
Dear Snow,
Have you had a change of looking at the project illustrating the issue?
--- Andrey |
 |
|
snowli
USA
1424 Posts |
Posted - 12/14/2020 : 11:34:09 AM
|
Hi Andrey,
When plotting heatmap, Origin auto decides x & y type based on info. in your specified area.
E.g. originally long name is 1, 2, 3, 4, 5, 6. So when plotting heatmap and u specify x as long name, Origin decides it's numeric. In axis dialog, u can see tick label is Numeric.
If u change long name values to other numbers. E.g. try to change column H's long name as 10. Rescale graph. U can see 10 shows. Also heatmap block stretches accordingly.
U can't change it to a text. That's why u see tick labels gone.
If in your original heatmap creating, you check Format X Data and set it as text. Then u can freely change text in long name. Since 1, 2, 3, .... are actually "1", "2","3"....
Thanks, Snow
|
 |
|
snowli
USA
1424 Posts |
Posted - 12/14/2020 : 1:20:16 PM
|
Actually if the graph is already plotted, u can go to Tools: Virtual Matrix manager to edit the virtual matrix.
E.g. in your opju, choose Tools: Virtual Matrix Manager. Click ... next to X Data Format. Choose Text. Click OK. --> AAA, CCC, BBB shows as tick labels. Now you change long name in worksheet, it will show as tick label in graph.
Thanks, Snow
|
 |
|
AKazak
Russia
1205 Posts |
Posted - 12/15/2020 : 02:13:32 AM
|
quote: Originally posted by snowli
Actually if the graph is already plotted, u can go to Tools: Virtual Matrix manager to edit the virtual matrix.
E.g. in your opju, choose Tools: Virtual Matrix Manager. Click ... next to X Data Format. Choose Text. Click OK. --> AAA, CCC, BBB shows as tick labels. Now you change long name in worksheet, it will show as tick label in graph.
Thanks, Snow
This worked. However, it would be nice to have automatic updates of the tick labels.
--- Andrey |
 |
|
|
Topic  |
|
|
|