[ncl-talk] query ( CONVERSION ASCII TO NetCDF)
Karin Meier-Fleischer
meier-fleischer at dkrz.de
Wed Sep 24 02:24:38 MDT 2014
Hi Kunal,
you read the data into an array called data with nlines=64800 and ncolumns=3 —> data(nlines,ncolumns)
The 1st column, all lines: data(:,0)
The 2nd column, all lines: data(:,1)
The 3rd column, all lines: data(:,2)
nLongitude = 360
Longitude = data(0:nLongitude-1,1) —> read 2nd column, first 360 lines
Please, take a look at
http://www.ncl.ucar.edu/Document/Manuals/Getting_Started/basics.shtml#ArraySubscripting
Bye,
Karin
Am 24.09.2014 um 07:10 schrieb Kunal Bali <kunal.bali9 at gmail.com>:
> Dear Karin Meier-Fleischer
>
> Thank You so much for helping me. Your run your scripts and working well.
> I just want know what is the means of this line > Longitude = data(0:nLongitude-1,1)
>
> Thank You
>
> Kunal Bali
> Research Scholar
> Radio & Atmospheric Science Division
> CSIR - National Physical Laboratory
> New Delhi - 110012
>
>
>
>
>
>
> On Wed, Sep 24, 2014 at 1:01 AM, Karin Meier-Fleischer <meier-fleischer at dkrz.de> wrote:
> Hi Kunal,
>
> one problems occurred while reading the datacaused by the variable name TotCH4_A in the
> header line of your data file 14-01.txt. NCL reads the value 4 in the name and writes it as first
> value into the data array. After renaming to TotCH_A in 14-01.txt file everything works well.
>
> You missed to convert the one dimensional variable TotCH4_A (in your NCL script) to a two
> dimensional array. Also as described in the mails before you should assign latitude and
> longitude to the named variables of TotCH4_A2D. See the script below.
>
> It is easier to write/save the NCL commands in a text file (e.g. script.ncl) and run it
> using ’ncl script.ncl'
>
> Bye, Karin
>
> ;-----------------------------------------------------------------------------
> load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_code.ncl"
> load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_csm.ncl"
> load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/contributed.ncl"
>
> begin
>
> nLatitude = 180
> nLongitude = 360
>
> data = asciiread("14-01.txt",(/nLatitude*nLongitude,3/),"float")
>
> Latitude = data(::nLongitude,0)
> Longitude = data(0:nLongitude-1,1)
> TotCH4_A = data(:,2)
> TotCH4_A2D = onedtond(TotCH4_A,(/nLatitude,nLongitude/))
>
> if (any(isnan_ieee(TotCH4_A2D))) then
> value = 1.e20
> replace_ieeenan (TotCH4_A2D, value, 0)
> TotCH4_A2D at _FillValue = value
> end if
>
> printMinMax(Latitude,0)
> printMinMax(Longitude,0)
> printMinMax(TotCH4_A,0)
>
> ; Assign named dimensions
>
> TotCH4_A2D!0 = "lat"
> TotCH4_A2D!1 = "lon"
>
> ; Assign coordinate variables
>
> TotCH4_A2D&lat = Latitude
> TotCH4_A2D&lon = Longitude
>
> TotCH4_A2D&lat at units = "degrees_north"
> TotCH4_A2D&lon at units = "degrees_east"
>
> printVarSummary(TotCH4_A2D)
>
> ; delete existing netcdf file to create a new one
> system("rm -rf Sample.nc")
> ncdf = addfile("Sample.nc","c")
>
> ; write data to netcdf file
>
> ncdf->TotCH4_A = TotCH4_A2D
>
> ; plot data
>
> wks = gsn_open_wks("x11","test")
> plot = gsn_csm_contour_map(wks,TotCH4_A2D,False)
>
> end
>
> ;-----------------------------------------------------------------------------
>
>
>
> Am 23.09.2014 um 19:45 schrieb Kunal Bali <kunal.bali9 at gmail.com>:
>
>> Here i attached scripts which i am trying to get the ascii to netcdf conversion.
>>
>> Kunal Bali
>> Research Scholar
>> Radio & Atmospheric Science Division
>> CSIR - National Physical Laboratory
>> New Delhi - 110012
>>
>>
>>
>>
>>
>>
>> On Tue, Sep 23, 2014 at 11:03 PM, Karin Meier-Fleischer <meier-fleischer at dkrz.de> wrote:
>> Hi Kunal,
>>
>> could you provide the data file and your script.
>>
>> Bye,
>> Karin
>>
>>
>> Am 23.09.2014 um 19:05 schrieb Kunal Bali <kunal.bali9 at gmail.com>:
>>
>>> Dear NCL users
>>>
>>> I tried previous mail scripts for converting ASCII to netcdf format , the file is generating but its without data points.Only variable names generating.
>>>
>>> Kunal Bali
>>> Research Scholar
>>> Radio & Atmospheric Science Division
>>> CSIR - National Physical Laboratory
>>> New Delhi - 110012
>>>
>>>
>>>
>>>
>>>
>>>
>>> On Tue, Sep 23, 2014 at 1:28 PM, Karin Meier-Fleischer <meier-fleischer at dkrz.de> wrote:
>>> Hi Kunal,
>>>
>>> the answer was given in an earlier mail:
>>>
>>> 1. read the ASCII data variable, lat and lon
>>> 2. create a output file: netcdf = addfile("simple.nc","c")
>>> 3. write your data variable to the output file: ncdf->values = values
>>>
>>>
>>> Please read the 'output to netcdf' examples for more details:
>>> http://ncl.ucar.edu/Applications/o-netcdf.shtml
>>>
>>> Bye,
>>> Karin
>>>
>>> Am 23.09.14 07:04, schrieb Kunal Bali:
>>>> Dear NCL users
>>>>
>>>> I am still not getting how to do the conversion from ASCII to netcdf ??
>>>>
>>>> Kunal Bali
>>>> Research Scholar
>>>> Radio & Atmospheric Science Division
>>>> CSIR - National Physical Laboratory
>>>> New Delhi - 110012
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> On Mon, Sep 22, 2014 at 7:35 PM, Yuqiang Zhang <yuqiangzhang.thu at gmail.com> wrote:
>>>> Hi Kunal,
>>>>
>>>>
>>>> In line 30, “ncl 30> TotCH4_A = data(:,2) “. You variable “TotCH4_A” is only assigned one dimension’s value, so you can’t assign two dimension through line 33 & 34.
>>>>
>>>>
>>>> Regards,
>>>>
>>>> Yuqiang
>>>>
>>>>
>>>> From: ncl-talk-bounces at ucar.edu [mailto:ncl-talk-bounces at ucar.edu] On Behalf Of Kunal Bali
>>>> Sent: Monday, September 22, 2014 8:53 AM
>>>> To: Karin Meier-Fleischer
>>>> Cc: ncl-talk at ucar.edu
>>>> Subject: Re: [ncl-talk] query ( CONVERSION ASCII TO NetCDF)
>>>>
>>>>
>>>> Dear NCL user
>>>>
>>>> I tried this script from NCL but still getting error
>>>>
>>>>
>>>> ncl 28> Longitude = data(:,1)
>>>> ncl 29> Latitude = data(:,0)
>>>> ncl 30> TotCH4_A = data(:,2)
>>>> ncl 31> ncdf = addfile("/home/kunal/simple1.nc","c")
>>>> ncl 32> filedimdef(ncdf,"time",-1,True)
>>>> ncl 33> TotCH4_A!0 = "Latitude"
>>>> ncl 34> TotCH4_A!1 = "Longitude"
>>>> fatal:Variable (TotCH4_A) has (1) dimensions can not write to dimension (1)
>>>> fatal:["Execute.c":8565]:Execute: Error occurred at or near line 34
>>>>
>>>>
>>>>
>>>> Kunal Bali
>>>>
>>>> Research Scholar
>>>>
>>>> Radio & Atmospheric Science Division
>>>>
>>>> CSIR - National Physical Laboratory
>>>>
>>>> New Delhi - 110012
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> On Mon, Sep 22, 2014 at 5:32 PM, Karin Meier-Fleischer <meier-fleischer at dkrz.de> wrote:
>>>>
>>>> Hi Kunal,
>>>>
>>>>
>>>> Please, take a look at the 'output netcdf' examples page, method_1
>>>>
>>>>
>>>> http://ncl.ucar.edu/Applications/method_1.shtml
>>>>
>>>> Try this:
>>>>
>>>>
>>>>
>>>> lat = data(:,0)
>>>>
>>>> lat = data(:,1)
>>>>
>>>> values= data(:,2)
>>>>
>>>> system("/bin/rm -f simple.nc") ; remove any pre-existing file
>>>>
>>>> ncdf = addfile("simple.nc" ,"c") ; output netCDF file
>>>> filedimdef(ncdf,"time",-1,True) ; recommended
>>>> values!0 = "lat"
>>>> values!1 = "lon"
>>>> values&lat = lat
>>>> values&lon = lon
>>>> ncdf->values = values
>>>>
>>>> Bye, Karin
>>>>
>>>>
>>>>
>>>> Am 22.09.2014 um 11:40 schrieb Kunal Bali <kunal.bali9 at gmail.com>:
>>>>
>>>> Dear NCL users
>>>>
>>>> I want to convert ASCII to .nc file format. Could any one please provides me the link for this query or give any detail about this ??
>>>>
>>>> I have data in 3 column ( Latitude Longitude Values)
>>>>
>>>> More Detail
>>>>
>>>> Variable: data
>>>> Type: float
>>>> Total Size: 777600 bytes
>>>> 194400 values
>>>> Number of Dimensions: 2
>>>> Dimensions and sizes: [64800] x [3]
>>>> Coordinates:
>>>> Number Of Attributes: 1
>>>> _FillValue : 9.96921e+36
>>>>
>>>>
>>>> So is there any ways to convert ASCII to netcdf format ???
>>>>
>>>> Thank You
>>>>
>>>>
>>>> Kunal Bali
>>>>
>>>> Research Scholar
>>>>
>>>> Radio & Atmospheric Science Division
>>>>
>>>> CSIR - National Physical Laboratory
>>>>
>>>> New Delhi - 110012
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> ncl-talk mailing list
>>>> List instructions, subscriber options, unsubscribe:
>>>> http://mailman.ucar.edu/mailman/listinfo/ncl-talk
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> ncl-talk mailing list
>>>> List instructions, subscriber options, unsubscribe:
>>>> http://mailman.ucar.edu/mailman/listinfo/ncl-talk
>>>
>>> _______________________________________________
>>> ncl-talk mailing list
>>> List instructions, subscriber options, unsubscribe:
>>> http://mailman.ucar.edu/mailman/listinfo/ncl-talk
>>>
>>>
>>> _______________________________________________
>>> ncl-talk mailing list
>>> List instructions, subscriber options, unsubscribe:
>>> http://mailman.ucar.edu/mailman/listinfo/ncl-talk
>>
>> ____________________________________
>> Dipl. Geophys. Karin Meier-Fleischer
>> Visualisierung
>> Abteilung Anwendungen
>>
>> Deutsches Klimarechenzentrum GmbH (DKRZ)
>> Bundesstrasse 45a * D-20146 Hamburg
>> Germany
>>
>> Phone: +49 (0)40 460094 126
>> Fax: +49 (0)40 460094 270
>> E-Mail: meier-fleischer at dkrz.de
>> URL: http://www.dkrz.de/
>>
>> Geschäftsführer: Prof. Dr. Thomas Ludwig
>> Sitz der Gesellschaft: Hamburg
>> Amtsgericht Hamburg HRB 39784
>>
>>
>>
>>
>>
>> <14-01.txt><ASCII to netcdf.ncl>_______________________________________________
>> ncl-talk mailing list
>> List instructions, subscriber options, unsubscribe:
>> http://mailman.ucar.edu/mailman/listinfo/ncl-talk
>
>
>
>
>
>
> _______________________________________________
> ncl-talk mailing list
> List instructions, subscriber options, unsubscribe:
> http://mailman.ucar.edu/mailman/listinfo/ncl-talk
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.ucar.edu/pipermail/ncl-talk/attachments/20140924/cc9a504e/attachment.html
More information about the ncl-talk
mailing list