How to plot geo-data using matplotlib/python?

How can we plot a FOUR WAY LOGARITHMIC GRAPH using Excel or MATLAB or any common application?

  • I am working on structural dynamics. In a textbook, i came across acceleration, velocity and displacement spectra plotted on the same graph with X axis as the Time Period axis. The Y axis is, say, displacement. Then the other two i.e. velocity and acceleration are plotted in the shape of a cross; inclined at +45 and -45 degrees with the x-axis. And the plots are logarithmic. Any idea how to plot this kind of graph using any common application such as Excel or MATLAB, or any good freeware from the internet??

  • Answer:

    If I understand your question correctly, I have seen this kind of representation in the Shock and Vibration Handbook, representing the log displacement, velocity and acceleration response of a resonant mode to excitation at various ratios of forcing to natural frequency (wf/wn). A similar plot is shown in the reference. Contrary to answer 1's judgment, this is a very clear and compact way to show the data, because a single response curve (or a family of such curves portraying responses with various amounts of damping) serves to display all 3 dependent variables. Velocity gridlines are horizontal. Since in free vibration displacement=velocity*wn and acceleration=velocity/wn, displacement gridlines are tilted at 45 degrees from the x axis, and acceleration gridlines are tilted at 135 degrees. I think you are asking how to generate these gridlines. For each gridline you need to join points at the left and right edges of the graph, which are simply projections of two constants. E.g., say you're dealing with acceleration, the grid-line you are drawing represents an acceleration of 0.1, and log (frequency ratio) ranges from -2 to 2. Then the data for your points are log(-2), log(0.1)+2 on the left and log(2), log(0.1)-2 on the right. Follow the same logic for the other gridlines. This can be done by manual programming in either matlab or excel and automatically by specialized plot programs, one of which is for sale on the ref. page.

arduous at Yahoo! Answers Visit the source

Was this solution helpful to you?

Other answers

It sounds like a very bad way to represent data, I'd fail a student if they handed me such a graph. If you want to represent it all on the same graph what is normally done is to use multiple y axes in parallel. The axes are either colour-coded with the data coresponding to each or arrows are drawn to indicate to which axis the each data set belongs. For your case you'd probably have two on the left and one on the right. The two together are spaced out just enough to allow the numbering of the axes to fit in between. You can't do it in Excell but you can do it in Matlab, just search around for multiple axes in the graphing section of the help files.

Paul C

Find solution

For every problem there is a solution! Proved by Solucija.

  • Got an issue and looking for advice?

  • Ask Solucija to search every corner of the Web for help.

  • Get workable solutions and helpful tips in a moment.

Just ask Solucija about an issue you face and immediately get a list of ready solutions, answers and tips from other Internet users. We always provide the most suitable and complete answer to your question at the top, along with a few good alternatives below.