Si vous voulez générer n
échantillons aléatoires entre la limite donnée (dans votre question -1
et 1
), vous pouvez utiliser la fonction rand
.
Voici un exemple:
% Define minimum x value
x_min=-1
% Define maximum x value
x_max=1
% Define the number of sample to be generated
n_sample=100
% Generate the samples
x_samples = sort(x_min + (x_max-x_min).*rand(n_sample,1))
Dans l'exemple, la fonction sort
est appelée à trier les valeurs afin d'avoir une série ascendent
.
x_min
et (x_max-x_min)
sont utilisés pour « décalage », la série de valeurs aléatoires de sorte qu'il appartient à l'intervalle désiré (dans ce cas -1 1
), étant donné que les rendements rand
nombre aléatoire dans un intervalle ouvert (0,1)
.
Si vous voulez avoir une matrice XY composée par les échantillons aléatoires et la valeur y constante définie (2):
y_val=2;
xy=[x_samples ones(length(x_samples),1)*y_val]
plot([x_min x_max],[y_val y_val],'linewidth',2)
hold on
plot(xy(:,1),xy(:,2),'d','markerfacecolor','r')
grid on
legend({'xy segment','random samples'})
(dans l'image, à seulement 20 échantillons ont été tracé pour le rendre plus clair)
Hope this helps.
Voulez-vous générer un échantillon aléatoire (valeurs) compris entre -1 et 1? –