Difference between revisions of "UCVMC How to process bin data"

From SCECpedia
Jump to navigationJump to search
Line 1: Line 1:
  
This is a horizontal plot
+
Binary data can be generated from UCVMC's plotting tool in python or by
 +
one of the UCVMC app that is written to work with the UCVMC api.
  
 
== Plot ==
 
== Plot ==
 +
 +
This is horizontal Vs slice plot from UCVMC's plot_horizontal_slice.py
  
 
{|
 
{|
Line 8: Line 11:
 
|}
 
|}
  
 
== bin data file ==
 
 
[http://hypocenter.usc.edu/research/UCVM/cvmh_no_ely_gtl/cvmh_nogtl_vs_0_map_data.bin binary data]
 
  
 
== metadata file ==
 
== metadata file ==
  
 
meta data contains many fields. Some of the fields are specific to the type
 
meta data contains many fields. Some of the fields are specific to the type
of the plot that were made. This plot is a plot of a horizontal slice, therefore, it contains the following metadata
+
of the plot that were made. This is a horizontal slice plot, therefore, it  
 +
contains the following metadata
  
 
   lon_list
 
   lon_list
Line 40: Line 40:
  
 
[http://hypocenter.usc.edu/research/UCVM/cvmh_no_ely_gtl/cvmh_nogtl_vs_0_map_meta.json metadata in json]
 
[http://hypocenter.usc.edu/research/UCVM/cvmh_no_ely_gtl/cvmh_nogtl_vs_0_map_meta.json metadata in json]
 +
 +
== bin data file ==
 +
 +
The binary data is written out as array of float32. It can be imported with numpy
 +
in python,
 +
 +
<pre>
 +
        import numpy as np
 +
        fh = open(rawfile, 'r')
 +
        floats = np.fromfile(fh, dtype=np.float32)
 +
</pre>
 +
 +
and fill into the 2D array as,
 +
 +
<pre>
 +
        datapoints = np.arange(num_x * num_y,dtype=np.float32).reshape(num_y, num_x)
 +
        i=0
 +
        j=0
 +
        for f in floats:
 +
            datapoints[i][j] = f
 +
            j = j + 1
 +
            if j >= num_x:
 +
                j = 0
 +
                i = i + 1
 +
</pre>
 +
 +
 +
[http://hypocenter.usc.edu/research/UCVM/cvmh_no_ely_gtl/cvmh_nogtl_vs_0_map_data.bin binary data]
 +
  
 
== Related Entries ==
 
== Related Entries ==
 
*[[CVM-H 15.1 Maps]]
 
*[[CVM-H 15.1 Maps]]
 
*[[UCVM]]
 
*[[UCVM]]

Revision as of 22:28, 3 July 2018

Binary data can be generated from UCVMC's plotting tool in python or by one of the UCVMC app that is written to work with the UCVMC api.

Plot

This is horizontal Vs slice plot from UCVMC's plot_horizontal_slice.py

CS17.3, no GTL


metadata file

meta data contains many fields. Some of the fields are specific to the type of the plot that were made. This is a horizontal slice plot, therefore, it contains the following metadata

 lon_list
 lat_list
 lat1
 lon1
 lat2
 lon2
 datafile
 num_x
 num_y
 min
 max
 color
 data_type
 outfile
 cvm_selected
 datapoints
 depth

(lon1,lat1) is the lower left corner of the plot and (lon2,lat2) is the upper right corner of the plot. lon_list and lat_list are the ticks of the axis

metadata in json

bin data file

The binary data is written out as array of float32. It can be imported with numpy in python,

        import numpy as np
        fh = open(rawfile, 'r')
        floats = np.fromfile(fh, dtype=np.float32)

and fill into the 2D array as,

         datapoints = np.arange(num_x * num_y,dtype=np.float32).reshape(num_y, num_x)
         i=0
         j=0
         for f in floats:
            datapoints[i][j] = f
            j = j + 1
            if j >= num_x:
                j = 0
                i = i + 1


binary data


Related Entries