label dots with bits - Can someone help me?

how do i label my points?
are complex points.
My code is as follows:
clear all;
close all;
clc;
L = 1e4; % Number of bits
SNRdB = 0:28;
SNR = 10.^(SNRdB/10);
r = 10.^(SNRdB/10);
alpha = 0.3;
max_run = 100;
for sk = 1:length(SNRdB)
for tk = 1:max_run
% 1 ou -1 para sinal em fase (an)
x_inp_I = sign(rand(1,L)- 0.5);
% 1 ou -1 para sinal de quadratura (bn)
x_inp_Q = sign(rand(1,L)- 0.5);
QPSK = x_inp_I + 1i .* x_inp_Q;
% Gera bits de marca d'água aleatórios (dI)
Bit_wat_I = sign(rand(1,L)- 0.5);
% Gera bits de marca d'água aleatórios (dQ)
Bit_wat_Q = sign(rand(1,L)- 0.5);
% Outra forma de encontrar a equação
for k = 1:L
if Bit_wat_I(k) == 1 && Bit_wat_Q(k) == 1
Bit_enviado(k) = (x_inp_I(k) .* ((sqrt(1-alpha)) + (sqrt(alpha)))) + (1i .* x_inp_Q(k) * ((sqrt(1-alpha)) + (sqrt(alpha))));
end
end
end
end
h = scatterplot(QPSK);
hold on
scatterplot(Bit_enviado,[],[],'r*',h)
I would like to label it with bits like the example below:

3 comentarios

The code you shared does not produe that plot.
Adam Danz
Adam Danz el 27 de Mayo de 2021
Where do the binary values come from? How are they related to the points?
adriane duarte
adriane duarte el 30 de Mayo de 2021
the random bits are produced through the variables:x_inp_I,x_inp_Q,Bit_wat_I and Bit_wat_Q.
then I use it in an equation to reproduce my complex points.

Iniciar sesión para comentar.

 Respuesta aceptada

Image Analyst
Image Analyst el 27 de Mayo de 2021

1 voto

Did you try calling text()?

4 comentarios

yea!!
I've done it in two ways:
First:
- I separated the real from the imaginary
q_real = real (Bit_enviado);
q_imag = imag (Bit_enviado);
- I applied strings to each one
str = string (q_real);
str1 = string (q_imag);
textscatter (q_real, q_imag, str);
But it doesn't come out the way I want it. a factor comes out
Second:
- I separated the real from the imaginary
q_real = real (Bit_enviado);
q_imag = imag (Bit_enviado);
- I turned each one into binary
bits32_real = dec2bin (typecast (single (q_real), 'uint32'));
bits32_imag = dec2bin (typecast (single (q_imag), 'uint32'));
or
z2_real = reshape (dec2bin (typecast (q_real, 'uint32'), 4). ', 1, []);
z2_imag = reshape (dec2bin (typecast (q_imag, 'uint32'), 4). ', 1, []);
Then I don't know what else to do.
Can you help me? @Image Analyst
You can loop over all (x,y) coordinates and call text() with the binary string - the 0101 or whatever:
for k = 1 : length(x)
thisx = x(k);
thisy = y(k);
binaryString = whatever you have to do to get it
text(thisx, thisy, binaryString, 'Color', 'r', 'FontSize', 15, 'FontWeight', 'bold');
end
Image Analyst
Image Analyst el 28 de Mayo de 2021
Editada: Image Analyst el 28 de Mayo de 2021
So did you try the code in my comment above (click "Show older comments" link above to see it)?
I can't run your program because
'scatterplot' requires Communications Toolbox.
You forgot to add the Communications Toolbox to the product list when you posted so I'll add it now.
adriane duarte
adriane duarte el 30 de Mayo de 2021
Editada: adriane duarte el 30 de Mayo de 2021
Oi!!!
Eu testei seu código sim!
obrigado.
Você poderia me ajudar com outra pergunta? @Image Analyst

Iniciar sesión para comentar.

Más respuestas (1)

Sulaymon Eshkabilov
Sulaymon Eshkabilov el 27 de Mayo de 2021
Editada: Sulaymon Eshkabilov el 27 de Mayo de 2021

1 voto

Hi,
(1) you need to create binary representation of your plotted points using dec2bin() for labels to display on the plot
(2) to put labels to all of your plotted points, you can employ this code written by Adam Danz
https://www.mathworks.com/matlabcentral/fileexchange/46891-labelpoints

Categorías

Más información sobre Convert Image Type en Centro de ayuda y File Exchange.

Etiquetas

Preguntada:

el 27 de Mayo de 2021

Comentada:

el 30 de Mayo de 2021

Community Treasure Hunt

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

Start Hunting!

Translated by