Initial values on the plot
4 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Hello. I have a matrix X (2X40). In the values of this matrix I apply normalization and matrix Xnorm appear (2X40). Next, I make the contour plot of matrix Xnorm. What I want is for the contour plot to show as a label and the initial values, that is the value found in matrix X. How is this done?
Your help is valuable !!!
3 comentarios
Biral Pradhan
el 30 de Mzo. de 2022
I understand, you want modify the default labels in the contour plot to show values corresponding to your original matrix. Currently we are not supporting this feature. I have brought this issue to the notice of the concerned people and it might be considered for a future release.
Respuestas (1)
Voss
el 30 de Mzo. de 2022
% make up some X:
X = [-22.5 -1.5 2.00 -0.05; -20.5 -0.5 1.00 -4.05];
% calculate X_norm from X:
X_min = min(X(:));
X_max = max(X(:));
X_norm = (X-X_min)/(X_max-X_min);
% create the contour:
[~,h] = contour(X_norm,'ShowText','on');
% make a colorbar to illustrate that the contour values use X_norm (0 to 1):
colorbar();
drawnow() % required
% get the levels used in the contour:
levels_norm = get(h,'LevelList');
% get the corresponding "unnormalized" levels
levels = levels_norm*(X_max-X_min)+X_min;
% get the index of each text's String in the (normalized) levels:
[~,idx] = min(abs(levels_norm-str2double(get(h.TextPrims,'String'))),[],2);
% set each text's String to the corresponding unnormalized level:
for ii = 1:numel(idx)
set(h.TextPrims(ii),'String',num2str(levels(idx(ii))));
end
0 comentarios
Ver también
Categorías
Más información sobre Contour Plots en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!