how to choose different colors for nodes

87 visualizaciones (últimos 30 días)
Kashfia Mahin
Kashfia Mahin el 25 de Ag. de 2019
Comentada: Kashfia Mahin el 27 de Ag. de 2019
t = [1 1 1 1];
h = [2 3 4 5];
g = graph(t,h);
p = plot(g);
g.Edges.value = [10; 20; 20; 100];
g.Nodes.value = [0.3; 0.564; 12; 1; 0.005];
g.Nodes.NodeColors = g.Nodes.value;
g.Edges.EdgeColors = g.Edges.value;
p.NodeCData = g.Nodes.NodeColors;
p.EdgeCData = g.Edges.EdgeColors;
q= plot(g,'NodeCData',g.Nodes.NodeColors);
colorbar
t is the source node as input and h is demand node as output. I want to two different colors for input and output. But I don't find correct way. Plz help me to solve it.
  3 comentarios
Adam Danz
Adam Danz el 25 de Ag. de 2019
"I want to two different colors for input and output. But I don't find correct way."
Does that mean you want the point labeled "1" to be one color and all the other points should be a different color?
Guillaume
Guillaume el 25 de Ag. de 2019
@darova, scatter does not have an overload for graph objects. Only plot has.
@Kashfia, it seems you already know how to set the colour of the nodes using 'NodeCData' (although the syntax you use is undocumented, it's equivalent to 'NodeCData', 'flat'), so like Adam, I'm not sure what you're asking.

Iniciar sesión para comentar.

Respuesta aceptada

Steven Lord
Steven Lord el 26 de Ag. de 2019
When you call plot on your graph or digraph object, specify the 'NodeColor' property. For example, here are two ways to create a digraph like the one in your example and plot it with node 1 being red and the others being green. I put each in their own figure window so you can compare the results.
d = digraph;
d = addedge(d, 1, 2:5);
You can explicitly specify a numnodes(d)-by-3 matrix of RGB values:
figure
p = plot(d, 'NodeColor', [1 0 0; 0 1 0; 0 1 0; 0 1 0; 0 1 0]);
Or you can plot with all the nodes being the same color and highlight ones that are in some way 'special'.
figure;
h = plot(d, 'NodeColor', 'g');
highlight(h, 1, 'NodeColor', 'r');

Más respuestas (0)

Categorías

Más información sobre Graph and Network Algorithms 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!

Translated by