4 views (last 30 days)

Hello,

I am trying to highlight a correlation between the position of earthquakes and some parameters such as depth or magnitude... I have already divided the map according to a grid. Then I get this correlation for each small square of the grid. </matlabcentral/answers/uploaded_files/29722/Capture%20d%E2%80%99%C3%A9cran%202015-04-24%20%C3%A0%2023.45.01.png>

Up to now, I succeeded to correlate the positions to the parameters, be it in cartesian or in polar coordinates.

Yet, I would like to correlate the mean depth of earthquakes to their positions according to the RADIUS (and only the radius, NOT the angle).

In other words, I would like to work with rings. (like the following figure)

Thank you very much for your help.

Star Strider
on 25 Apr 2015

This looks more like an archery target than an earth section, but it at least seems to give the appearance you want. Experiment with the colours to get the result you want.

The code uses the cylinder object to create a cone, then uses the colormap to colour it by height. There might be better ways to code it, but no one has come up with one yet, so I offer mine:

c = colormap(jet(4));

[X,Y,Z] = cylinder([1:-0.25:0], 256);

figure(1)

hs = surf(X, Y, Z)

axis square

set(hs, 'EdgeColor','none')

view([0 90])

The plot:

Star Strider
on 25 Apr 2015

‘I would like to correlate the mean depth of earthquakes to their positions according to the RADIUS (and only the radius, NOT the angle).’

You only need a 2D plot for that, not 3D. Consider something like this:

plot(radius, depth)

Star Strider
on 26 Apr 2015

Sign in to comment.

Ahmet Cecen
on 25 Apr 2015

I am not sure what the question here is. If all you need to check is whether there is a correlation between mean depth and radius, just convert your Cartesian coordinates to polar using:

[THETA,RHO] = cart2pol(X,Y)

then just do not use theta ... which is effectively

[~,RHO] = cart2pol(X,Y)

So then you would just plot RHO vs Mean Depth for a scatter plot, and do any sort of correlation analysis you want with RHO as your x and Mean Depth as your y.

If then you want to plot it, you will plot using:

polar(theta,rho)

but instead use:

polar(1:2*pi,rho)

so you will plot rings instead of points.

Sign in to answer this question.

Opportunities for recent engineering grads.

Apply Today
## 0 Comments

Sign in to comment.