Borrar filtros
Borrar filtros

plotting a line graph

5 visualizaciones (últimos 30 días)
Alexander
Alexander el 25 de Nov. de 2022
Comentada: Alexander el 26 de Nov. de 2022
I have a matirx that is [1 N] and N being a size the enduser chooses. I want to plot the result of matirx in a for loop and update the plot after each iteration.
Example
dice = [0 0 0 0 0 0]
after first iteration
dice = [1 0 0 0 0 0]
2nd iteration
dice = [1 0 0 0 1 0]
This loop well go for X amount times that the endused picks.
  1 comentario
Image Analyst
Image Analyst el 26 de Nov. de 2022
Editada: Image Analyst el 26 de Nov. de 2022
What operation are you doing to decide which element of dice to change at each iteration? Is it just a random location? And what do you do with the element once you have decided on which one it is? Do you just set it to 1? Do you toggle it so that 0 goes to 1 and 1 goes to 0?
dice = zeros(1, N);
for k = 1 : X
index = whatever
dice(index) = whatever
end

Iniciar sesión para comentar.

Respuestas (1)

Sulaymon Eshkabilov
Sulaymon Eshkabilov el 26 de Nov. de 2022
Here is a list of steps how you can write a short code to get your assignment done:
(1) A user input entry with input()
(2) Write a loop operation.
  • Here I would use dec2bin(ii, 6) to get dice = [0 0 0 0 0 0] for step1, ....[0 0 0 0 0 1] for step 2, ...., etc.
  • Convert the created binary numbers back to decimal using str2double(), E.g.: D = [str2double(dice(1)), str2double(dice(2)), ... str2double(dice(6))]
  • Plot the obtained D values: plot(D), hold all
  • Store legends and add to the plot
  • end of loop
  3 comentarios
Alexander
Alexander el 26 de Nov. de 2022
dice = input('What side di do you wish to roll: ')
N = input('please enter how many times you would like to roll the dice: ')
dice_v = [1:dice];
list = zeros(size(dice_v));
precent = zeros(size(dice_v));
upper_limit = (1/dice) + 0.005;
lower_limit = (1/dice) - 0.005;
id = 0;
true_random = 0;
one_fourth = N * 0.25
for i = 1:N
clc
rolls = randi([1 dice],1,1);
id = rolls;
list(id) = list(id) + 1;
precent(id) = list(id)/N;
upper_threshold =
max(precent) - min(precent)
if (threshold > lower_limit && threshold < upper_limit) && (one_fourth < i)
true_random = true_random + 1
if true_random > 3
break
end
pause(1)
else
true_random = 0
end
%plot(list(1))
pause(0.01)
end
Alexander
Alexander el 26 de Nov. de 2022
Here the entire

Iniciar sesión para comentar.

Categorías

Más información sobre Function Creation en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by