Add new functions
This commit is contained in:
27
Functions/EQ_visuals/showLevelConfusionMatrix.m
Normal file
27
Functions/EQ_visuals/showLevelConfusionMatrix.m
Normal file
@@ -0,0 +1,27 @@
|
||||
function showLevelConfusionMatrix(decided_symbols,ref_symbols,options)
|
||||
arguments
|
||||
decided_symbols
|
||||
ref_symbols
|
||||
options.M = NaN
|
||||
options.fignum (1,1) double = NaN % Default to NaN if not provided
|
||||
options.displayname (1,:) char = '' % Default to an empty string if not provided
|
||||
end
|
||||
|
||||
% Determine the figure number to use or create a new figure
|
||||
if isnan(options.fignum)
|
||||
fig = figure; % Create a new figure and get its handle
|
||||
else
|
||||
fig = figure(options.fignum); % Use the specified figure number
|
||||
end
|
||||
|
||||
if length(unique(decided_symbols.signal))>20
|
||||
assert(~isnan(options.M),'Provide either decided symbol sequence or modulation order M (PAM-4 -> M=4)');
|
||||
decided_symbols = PAMmapper(options.M,0).quantize(decided_symbols);
|
||||
end
|
||||
|
||||
%%% Confusion Matrix
|
||||
cm = confusionchart(ref_symbols.signal,decided_symbols.signal,'RowSummary','row-normalized','ColumnSummary','column-normalized','Title','Confusion Matrix','XLabel','Decisions','YLabel','Transmitted');
|
||||
|
||||
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user