2
$\begingroup$

I want to make a plot that shows the density of trajectories (x-y plots). In other words I want a plot that's analogous to this but with curves instead of points as data.
enter image description here

Here's what I'm doing right now (with a simplified function) which gives okay results for 100 curves but doesn't scale to 10,000:

ta = RandomVariate[NormalDistribution[0, 0.3], {100}];
p = Map[Cos[t - #] &, ta];
Plot[p, {t, 0, 10}, PlotStyle -> {{Black, Opacity[0.05]}}]

enter image description here

I'd also prefer to not have to quantize the x-y space. But if that's the only solution I'll accept it.

$\endgroup$
  • 1
    $\begingroup$ Have you seen DensityPlot, could you use that to display the number of trajectories that pass through the X-Y space? $\endgroup$ – image_doctor Jun 27 '15 at 0:07
  • $\begingroup$ I have. I'm not sure how i'd compute a density function from 10,000 stochastic trajectories though... $\endgroup$ – user1816847 Jun 27 '15 at 5:17
  • $\begingroup$ At each of may constant-x surfaces, compute the distribution (in y) of lines that pass through it. Of course, this will require discretizing x-y space. $\endgroup$ – bbgodfrey Jun 27 '15 at 6:29
1
$\begingroup$

Here is a method to compute a density function of a large number of arbitrary positive real functions.

Create a list of the functions required:

fs = Function[{s, t}, (1 + Cos[t - #]) (1 + Sin[s - #])] & /@ 
       RandomReal[{0, 2 π}, {1000}];

Compute the density plot by mapping the arguments over the functions and then summing them:

DensityPlot[Plus @@ (#[x, y] & /@ fs), {x, 0, 2 π}, {y, 0, 2 π}]

Mathematica graphics

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.