Error in Network Graph

5 Ansichten (letzte 30 Tage)
Chinenye Ezeh
Chinenye Ezeh am 29 Jun. 2018
Kommentiert: Chinenye Ezeh am 30 Jun. 2018
I tried to generate a graph after reading some values from a txt file. But I get the error message "In an assignment A(:) = B, the number of elements in A and B must be the same. " My code is shown below:
fid = fopen('URV.txt','rt');
A = textscan(fid, '%f%f', 'MultipleDelimsAsOne',true, 'Delimiter','[;', 'HeaderLines',2);
fclose(fid);
G=graph(A{1}, A{2});
I do not know what the actual issue is as I have looked at other codes from Mathworks which seem correct. I have tried a couple other formats but nothing seems to work. What am I doing wrong? Any help will be appreciated. Thanks
  3 Kommentare
Guillaume
Guillaume am 29 Jun. 2018
Bearbeitet: Guillaume am 29 Jun. 2018
It would be very helpful if you attached URV.txt to your question.
Also, can you post the whole text of the error message. Everything in red.
Chinenye Ezeh
Chinenye Ezeh am 29 Jun. 2018
Actually, I am working with very large datasets from different networks. So, I need a means to access them through text files.
In an assignment A(:) = B, the number of elements in A and B must be the same.
Error in graph>testadjmatrix (line 713) mOut(mOut == 0) = varargin{1};
Error in graph (line 281) [E,N,eps] = fromweightedadjmatrix(testadjmatrix(varargin{1},emptyValue),emptyValue);
Error in * (line 16) G=graph(A{1}, A{2});

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Steven Lord
Steven Lord am 29 Jun. 2018
From the documentation for the graph function, "G = graph(s,t) specifies graph edges (s,t) in node pairs. s and t can be numeric, character vectors, or cell arrays of character vectors with the same number of elements."
The key requirement that I suspect your data fails to satisfy is the "same number of elements" section. To confirm this and also to check the other requirements while we're at it, immediately before the line where you try to construct the graph run these lines of code and show us what they display.
s1 = size(A{1})
c1 = class(A{1})
isc1 = iscellstr(A{1})
s2 = size(A{2})
c2 = class(A{2})
isc2 = iscellstr(A{2})
  5 Kommentare
Chinenye Ezeh
Chinenye Ezeh am 30 Jun. 2018
Bearbeitet: Chinenye Ezeh am 30 Jun. 2018
which -all graph
E:\matlab\bin\torsche-master\torsche-master\scheduling\@graph\graph.m % graph constructor E:\matlab\toolbox\matlab\graphfun\@graph\graph.m % Shadowed graph constructor
Chinenye Ezeh
Chinenye Ezeh am 30 Jun. 2018
It works well now. I figured out there had been conflict of graph functions. I deleted the first folder to enable Matlab inbuilt graph function work properly. A big thanks to Steven Lord and every other person who helped out.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Graph and Network Algorithms finden Sie in Help Center und File Exchange

Produkte


Version

R2017a

Community Treasure Hunt

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

Start Hunting!

Translated by