n=1000;
dArray = []
let meanD = 0;
function setup(){
createCanvas(windowWidth,windowHeight);
rData()
mData()
stroke(255)
angleMode(DEGREES)
}
function draw(){
background(0);
t=frameCount
translate(width/2,height/2);
stroke(255)
strokeWeight(2)
mData()
line(-width/2,meanD,width/2,meanD);
for (let i=0;i<n;i++){
stroke(255)
strokeWeight(2)
circle(width/n*i-width/2,dArray[i],1)
stroke(i/10,50+i/30,200+i/30)
strokeWeight(0.5)
line(width/n*i-width/2,dArray[i],width/n*i-width/2,meanD)
dArray[i]=dArray[i]+random(0,0.5)*sin(i+t)
}
}
function rData(){
for (let i=0;i<n;i++){
dArray[i]=random(-100,100);
}
}
function mData(){
s=0
for (let i=0;i<n;i++){
s=s+dArray[i]
}
meanD=s/n;
}
function mousePressed(){
if(n<5000){
n=n+200;
}
else{n=50}
rData()
}