フィルターのクリア

Plotting a heat map with two variables with color dependent on third variable

8 ビュー (過去 30 日間)
Chinwe Orie
Chinwe Orie 2019 年 10 月 2 日
回答済み: Poonam Mahapatra 2020 年 4 月 13 日
I have a matrix of x and y values, and I would like to plot them using a heat map. However, there is also a third column in the matrix of z-values, which I would like to determine the color of each point in the heat map. How would I do this?
  3 件のコメント
Chinwe Orie
Chinwe Orie 2019 年 10 月 3 日
Something like that yes, especially the checkered plot. That would be very ideal. My x and y are both 1xn vectors (n is something like 5000 for example). My z-variable is also a 1xn vector. However, the color input has to be a matrix. I'm not sure how I would use my z-variable to control color variation if the color input has to be a matrix.
Chinwe Orie
Chinwe Orie 2019 年 10 月 3 日
%code
PC = [drops;heatfreqs;heatprom]; %drops, heatfreqs and heatprom are all 1x65550 vectors
PC = squeeze(PC);
pcolor(PC)
shading interp
colorbar
I've tried the above code, but all it gets me is a pcolor plot that doesn't take into account any of the values in the matrix. It just plots based on the coordinates of the matrix itself. I have attached a photo of what the graph looks like.

サインインしてコメントする。

回答 (1 件)

Poonam Mahapatra
Poonam Mahapatra 2020 年 4 月 13 日
You can make a table of Xdata, Ydata and Cdata where Xdata is the variable having data to be displayed along the x-axis, Ydata is the variable having data to be displayed along the y-axis and Cdata is the variable having values to determine the color of each cell, using the following command:
>> tb1 = table(Xdata, Ydata, Cdata);
Then you can plot the heatmap using the following command:
>> h = heatmap(tb1,'Xdata','Ydata','ColorVariable','Cdata');
Please refer to the following documentation for more details:

カテゴリ

Help Center および File ExchangeGeographic Plots についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by