Visualizing values of nodes in a graph
Ältere Kommentare anzeigen
I'm trying to visualize the values assigned to graph nodes
tail = 1:9;
head = 2:10;
G = graph(tail,head);
data = rand(10,10);
for k=1:10
clf
G.Nodes.Value = data(:,k);
p = plot(G)
p.Marker = 's';
p.MarkerSize = 7;
p.NodeCData = G.Nodes.Value;
colorbar
%Add plotting options
grid on
title(['t = ',num2str(k)])
view([30 35])
movieVector(k) = getframe;
end
The color scale(colobar) keeps changing while iterating through each loop. But I want the colorbar to be fixed for all iterations.
For instance, currenly what happens is
For k = 1, if data(:,k) contains values that range from 1:10
and
for k = 10, if data(:,k) contains values from 10:100
colorbar is different for both k's.
Expected output:
I want to have a colorbar that has a color scale ranging from 1:100. This will ensure that the colorscale doesn't vary for all the iterations (i.e colorbar is the same for all iterations)
Any suggestions on how to do this will be really helpful.
3 Kommentare
darova
am 20 Jan. 2020
Use colorbar outside the loop. What is the problem?
Deepa Maheshvare
am 21 Jan. 2020
darova
am 21 Jan. 2020
What if display colorbar before loop?
Antworten (1)
Fix the axis limits right after creating the colorbar:
colorbar
caxis([1 100])
Kategorien
Mehr zu Data Distribution Plots finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!