[ncl-talk] query ( CONVERSION ASCII TO NetCDF)
Karin Meier-Fleischer
meier-fleischer at dkrz.de
Tue Sep 23 13:31:43 MDT 2014
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
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.ucar.edu/pipermail/ncl-talk/attachments/20140923/b8c3978a/attachment.html
More information about the ncl-talk
mailing list