<div dir="ltr"><br>I am most grateful for your answers! Thanks!<br><br>I have not had success with my doubts and even with my problem.<br><br>I did not know that I would need to calculate the trajectories before. Sorry!<br><br>I&#39;d
 like to know, how you can do these calculations. It is done within the 
NCL? How? Can I send a small set of data for you to do these tests? You 
would have a small example of how to make these trajectories and how to 
use scripts for strokes?<br><br>Thank you for your help and cooperation!<br><br>Cheers<br>Carlos<br></div><div class="gmail_extra"><br><div class="gmail_quote">2014-12-09 14:09 GMT-02:00 Alan Brammer <span dir="ltr">&lt;<a href="mailto:abrammer@albany.edu" target="_blank">abrammer@albany.edu</a>&gt;</span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Replies should pretty much always be to ncl-talk.<div>  I can not provide code for the trajectory calculation.  I would suggest you research into hysplit <a href="http://ready.arl.noaa.gov/HYSPLIT.php" target="_blank">http://ready.arl.noaa.gov/HYSPLIT.php</a> or look into the software Vapor <a href="https://www.vapor.ucar.edu/" target="_blank">https://www.vapor.ucar.edu/</a> <br>These can both calculate kinematic air trajectories, I&#39;m not sure about ocean based trajectories (if that&#39;s your thing).  This is as much info as I can provide.<div><br></div><div>There are many papers and programs out there to calculate trajectories, I suggest you look into them and decide what you need.  NCL would then be able to plot up the data calculated by the trajectory model. </div><div><br></div><div> Good luck. </div></div></div><div class="HOEnZb"><div class="h5"><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Dec 9, 2014 at 11:03 AM, Carlos Batista <span dir="ltr">&lt;<a href="mailto:krlosbatist@gmail.com" target="_blank">krlosbatist@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><br>Dear Alan,<br><br>I am most grateful for your answers! Thanks!<br><br>Alan, I have not had success with my doubts and even with my problem.<br><br>I did not know that I would need to calculate the trajectories before. Sorry!<br><br>I&#39;d like to know, how you can do these calculations. It is done within the NCL? How? Can I send a small set of data for you to do these tests? You would have a small example of how to make these trajectories and how to use scripts for strokes?<br><br>Thank you for your help and cooperation!<br><br>Cheers<br>Carlos<br><br></div>PS1: <span lang="en"><span>Sorry</span><span>,</span> <span>but</span> <span>I can</span> <span>send my</span> <span>questions</span> <span>just</span> <span>post</span> <span>here</span> <span>or</span> <span>in the</span> <span>forum</span><span>?</span></span></div><div class="gmail_extra"><br><div class="gmail_quote">2014-12-09 12:45 GMT-02:00 Alan Brammer <span dir="ltr">&lt;<a href="mailto:abrammer@albany.edu" target="_blank">abrammer@albany.edu</a>&gt;</span>:<div><div><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Carlos, <div>I haven&#39;t read all of this thread, so apologies if this is answered.  To plot trajectories one first needs to calculate the trajectory. Earlier you said &quot;t<span style="font-size:12.8000001907349px">herefore, I have variables in all oceans and I would like to trace their paths,</span><span style="font-size:12.8000001907349px"> &quot; which makes me think you don&#39;t have trajectories.   </span>If you want to calculate trajectories then there is not any examples of an easy way in NCL and while it is somewhat straightforward it&#39;s going to take a good amount of coding. Probably not something to do if you&#39;re not familiar with a language. </div><div><br></div><div>If you have already have trajectories then the required variables would be time, lat, lon and then salinity? in your case I guess.  If you have a small data file, and you&#39;re struggling with reading it in. Send the code you&#39;re using and the file in question (if less than 1.5MB) to the list. </div><div>Gustavo already gave you a lot of info about how the examples are structured the binary files are (/9,ntime, ntraj/).  If you already have the data file ask whoever made it what the ordering is and change the script according.  Don&#39;t change the file to match the example script, that&#39;s just extra work. </div><div><br></div><div><br></div><div>Lastly to learn NCL look at the documentation and examples.  Some examples have data files saved here: <a href="https://www.ncl.ucar.edu/Applications/Data/" target="_blank">https://www.ncl.ucar.edu/Applications/Data/</a></div><div>Learning by asking questions to NCL-talk is not recommended. That&#39;s why the documentation was created. Also check out Mary&#39;s webinar emails. </div><span><font color="#888888"><div><br></div><div><br></div><div><br></div><div>Alan. </div><div><br></div></font></span></div><div><div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Dec 8, 2014 at 9:13 PM, Carlos Batista <span dir="ltr">&lt;<a href="mailto:krlosbatist@gmail.com" target="_blank">krlosbatist@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><br>I will post the questions here in the forum ...<br><br>Gustavo, as I not know use the NCL, I need some examples of how it works. To trace the trajectories must do the same thing. I&#39;d like to know if you would have some data series in which you can use with those routines traj_1.ncl and traj_2.ncl. So I&#39;ll can see how organized my data in a better way.<br><br>Sorry for all questions, but I realy not know use the NCL, but I want learn as using in my study...<br><br>Appreciate your cooperation!<br><br>Thanks<br>Cheers!<br>Carlos<br></div><div class="gmail_extra"><br><div class="gmail_quote">2014-12-08 2:06 GMT-02:00 Gustavo Correa <span dir="ltr">&lt;<a href="mailto:gus@ldeo.columbia.edu" target="_blank">gus@ldeo.columbia.edu</a>&gt;</span>:<div><div><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi Carlos<br>
<br>
It would help if you send a clear, complete, precise, description of the data layout<br>
in your input file.<br>
Otherwise it will be just wild guesswork and ineffective trial and error.<br>
<br>
Apparently you are stuck when you read the data in.<br>
There is no point trying to debug the script further if you cannot even read the data.<br>
To read the data correctly, you need to know what you are reading,<br>
i.e. you need to make clear how the data is organized in the input file.<br>
In addition, the script structure certainly depends on your data layout.<br>
It may be just like the example script, or it may need modifications.<br>
<br>
Is there a single trajectory in the input file or several trajectories?<br>
What is the sequence of data?<br>
<br>
Is it:<br>
<br>
lat1,lon1,time1,salinity1,<br>
lat2, lon2, time2, salinity2,<br>
...<br>
latN, lonN, timeN, salinityN<br>
<br>
or perhaps<br>
<br>
lat1, lat2, ..., latN<br>
lon1, lon2, ...,lonN<br>
time1, time2, ...,timeN<br>
salinity1, salinty2, ..., salinityN<br>
<br>
What is &quot;N&quot; in this sequence?<br>
Is it 250 as you mentioned before, or some other number?<br>
<br>
Are there four variables (lon, lat, time, salinity) or are there more (or less) variables?<br>
Which variables, how many, how are they ordered?<br>
<br>
Does this layout get repeated for more trajectories?<br>
How many repetitions/trajectories?<br>
<span><br>
<br>
On Dec 7, 2014, at 1:08 PM, Carlos Batista wrote:<br>
<br>
&gt; Hello Gustavo.<br>
&gt;<br>
</span><span>&gt; Gustavo, my data has a latitude, longitude, time and the values of my variable.<br>
&gt;<br>
&gt; I imagine that at each grid point (x, y, and time) there are values of my variable that change with time.<br>
&gt;<br>
<br>
</span>That isn&#39;t clear.<br>
If x and y stay fixed, then there is no trajectory, the location will always be the same.<br>
<span><br>
&gt; Which of the scripts could do the course? The traj_1.ncl or traj_2.ncl?<br>
&gt;<br>
<br>
</span>It all depends on how the data is organized in the input file.<br>
One of the scripts may fit, or may need to be modified to adapt to your data layout.<br>
<span><br>
&gt; Could you tell me how the data should be organized for the scripts work?<br>
&gt;<br>
&gt; With these my data: x, y variable time-varying .... is possible to trace the trajectories of my variable?<br>
&gt;<br>
<br>
</span>I am not sure I understand what you&#39;re saying.<br>
If you are saying that X and Y are fixed and only salinity varies with time,<br>
then you are not going to be able to draw trajectories.<br>
<br>
For trajectories x and y must vary with time (unless the particle/parcel  is not moving,<br>
which is not what happens in the ocean).<br>
X,Y fixed and only the value of the salinity varying with time sounds as the Eulerian<br>
approach to fluid mechanics.<br>
That is probably not what you want.<br>
If you are interested in trajectories, you need a Lagrangian description, i.e.,<br>
you need to follow the fluid parcels over time, so that X, Y, and salinity<br>
will vary together with time.<br>
<div><div><br>
I hope this helps,<br>
Gus Correa<br>
<br>
&gt; Gustavo, sorry so many questions, but I need to understand how the script works for trying to organize the data correctly.<br>
&gt;<br>
&gt; Thanks!!!<br>
&gt; Cheers!<br>
&gt;<br>
&gt; Carlos Batista<br>
&gt;<br>
&gt; 2014-12-07 12:42 GMT-02:00 Gustavo Correa &lt;<a href="mailto:gus@ldeo.columbia.edu" target="_blank">gus@ldeo.columbia.edu</a>&gt;:<br>
&gt; Hi Carlos<br>
&gt;<br>
&gt; Something is amiss, which is hard for me to understand,<br>
&gt; because you didn&#39;t tell clearly what is in your data.<br>
&gt;<br>
&gt; To draw trajectories, you need the position (x,y)<br>
&gt; of the particles.<br>
&gt; You could use the salinity information *also* (as in example traj_2.ncl, where<br>
&gt; salinity values are associated to variations in the trajectory color).<br>
&gt; However, the fundamental information you need is position (x,y), not salinity itself,<br>
&gt; and that is what is used in example traj_1.ncl.<br>
&gt;<br>
&gt; What do you have (x,y), or do you have salinty only?<br>
&gt; What is in the 250 points in your file?<br>
&gt;<br>
&gt; In the example traj_1.ncl, ntime=131, the input file seems to have<br>
&gt; a first Fortran record (record 0) with 9 x 131 x 100 data points,<br>
&gt; and a second Fortran record (record 1) with 131 data points (presumably<br>
&gt; the time data values associated to the first record).<br>
&gt; The first record seems to store x (xpt) and y (ypt) coordinates in the big(1,:,traj(i)),<br>
&gt; and big(2,:,traj(i)) points of the first record in the input file.<br>
&gt; You see? The script uses the particle position (x,y) to draw the trajectories.<br>
&gt; It doesn&#39;t even use the salinity values (which is used only in scrpit traj_2.ncl,<br>
&gt; and seems to be stored in big(8,:,traj(i)).<br>
&gt;<br>
&gt; That is as far as I can tell from the code in those two examples (which I haven&#39;t run/tried).<br>
&gt;<br>
&gt; Does your file have  the salinity values only?<br>
&gt; If that is the case, you cannot draw trajectories.<br>
&gt; You may not need all the information that the file in the examples have.<br>
&gt; However, you definitely need the particle position (x,y).<br>
&gt;<br>
&gt; I hope this helps,<br>
&gt; Gus Correa<br>
&gt;<br>
&gt; On Dec 7, 2014, at 7:13 AM, Carlos Batista wrote:<br>
&gt;<br>
&gt; &gt;<br>
&gt; &gt; Hello Gustavo.<br>
&gt; &gt;<br>
&gt; &gt; My files were written in Fortran, compiled in ifort. I can transform this data into ASCII using the very FORTRAN or NetCDF using GrADS. However, do not know if using the GrADS will work too.<br>
&gt; &gt;<br>
&gt; &gt; Gustavo, my data are ocean variables (salinity). Therefore, I have variables in all oceans and I would like to trace their paths, like the example that is on the page. That means I have more than 1 trajectorie?<br>
&gt; &gt;<br>
&gt; &gt; Gustavo, the cbinread did not work. What really works is the descriptor fbinrecread. I tried again without the time information, as you recommended.<br>
&gt; &gt;<br>
&gt; &gt; Now there&#39;s one new problem. The problem arises within another command: coordinate matrices.<br>
&gt; &gt;<br>
&gt; &gt; See the new test:<br>
&gt; &gt; ;*******************************<br>
&gt; &gt; carlos@carlos-Lenovo-IdeaPad-Z400-Touch:~/area/$ ncl<br>
&gt; &gt;<br>
&gt; &gt;  Copyright (C) 1995-2013 - All Rights Reserved<br>
&gt; &gt;  University Corporation for Atmospheric Research<br>
&gt; &gt;  NCAR Command Language Version 6.1.2<br>
&gt; &gt;  The use of this software is governed by a License Agreement.<br>
&gt; &gt;  See <a href="http://www.ncl.ucar.edu/" target="_blank">http://www.ncl.ucar.edu/</a> for more details.<br>
&gt; &gt;<br>
&gt; &gt; ncl 0&gt; load &quot;$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_code.ncl&quot;<br>
&gt; &gt; ncl 1&gt; load &quot;$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_csm.ncl&quot;<br>
&gt; &gt; ncl 2&gt; ;**************************************************<br>
&gt; &gt; ncl 3&gt; begin<br>
&gt; &gt; ncl 4&gt; ntime = 250<br>
&gt; &gt;<br>
&gt; &gt; ncl 6&gt;  big = fbinrecread(&quot;dados.bin&quot;,0,(/1,ntime,1/),&quot;float&quot;)<br>
&gt; &gt;<br>
&gt; &gt; ncl 7&gt;  wks = gsn_open_wks(&quot;ps&quot;,&quot;traj&quot;)<br>
&gt; &gt; ncl 8&gt;    res            = True<br>
&gt; &gt; ncl 9&gt;    res@gsnDraw    = False<br>
&gt; &gt; ncl 10&gt;    res@gsnFrame   = False<br>
&gt; &gt; ncl 11&gt;    res@vpWidthF   = 0.80<br>
&gt; &gt; ncl 12&gt;    res@vpHeightF  = 0.80<br>
&gt; &gt; ncl 13&gt;    res@mpMaxLatF  = -20<br>
&gt; &gt; ncl 14&gt;    res@mpMinLatF  = -60<br>
&gt; &gt; ncl 15&gt;    res@mpMinLonF  = -75<br>
&gt; &gt; ncl 16&gt;    res@mpMaxLonF  = -25<br>
&gt; &gt; ncl 17&gt;<br>
&gt; &gt; ncl 18&gt;    res@tiMainString    = &quot;Example of a trajectory plot&quot;  ; title<br>
&gt; &gt; ncl 19&gt;    res@gsnCenterString = &quot;markers every 4th time step&quot;<br>
&gt; &gt; ncl 20&gt;<br>
&gt; &gt; ncl 21&gt;    map = gsn_csm_map_ce(wks,res)<br>
&gt; &gt; ncl 22&gt; ;*********************************************<br>
&gt; &gt; ncl 23&gt; ; trajectory parameters<br>
&gt; &gt; ncl 24&gt; ;*********************************************<br>
&gt; &gt; ncl 25&gt;    xpt = new(ntime,float)<br>
&gt; &gt; ncl 26&gt;    ypt = new(ntime,float)<br>
&gt; &gt; ncl 27&gt; traj = (/-1,-0.5,0.1,0.5,1/)<br>
&gt; &gt; ncl 28&gt; pres                  = True<br>
&gt; &gt; ncl 29&gt;    pres@gsLineThicknessF = 2.0<br>
&gt; &gt; ncl 30&gt;    colors= (/&quot;red&quot;,&quot;blue&quot;,&quot;dark green&quot;,&quot;grey&quot;,&quot;magenta&quot;/)<br>
&gt; &gt; ncl 31&gt;<br>
&gt; &gt; ncl 32&gt;    mres  = True<br>
&gt; &gt; ncl 33&gt;    first = True<br>
&gt; &gt; ncl 34&gt; ;********************************<br>
&gt; &gt; ncl 35&gt;    c=0<br>
&gt; &gt; ncl 36&gt;    do i = 0,dimsizes(traj)-1<br>
&gt; &gt;<br>
&gt; &gt; ncl 37&gt;       ypt = big(2,:,traj(i))<br>
&gt; &gt;<br>
&gt; &gt; ncl 38&gt;       xpt = big(1,:,traj(i))<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt; ncl 40&gt;       pres@gsLineColor = colors(c)<br>
&gt; &gt; ncl 41&gt;       c=c+1<br>
&gt; &gt; ncl 42&gt;       gsn_polyline(wks,map,xpt,ypt,pres)<br>
&gt; &gt; ncl 44&gt; ; add markers to the trajectories<br>
&gt; &gt; ncl 45&gt;<br>
&gt; &gt; ncl 46&gt;       mres@gsMarkerIndex  = 16<br>
&gt; &gt; ncl 47&gt;       mres@gsMarkerSizeF  = 4.0<br>
&gt; &gt; ncl 48&gt;       mres@gsMarkerColor  = &quot;black&quot;<br>
&gt; &gt; ncl 49&gt;       gsn_polymarker(wks,map,xpt(::4),ypt(::4),mres) ; draw every 4th marker<br>
&gt; &gt; ncl 50&gt;<br>
&gt; &gt; ncl 51&gt; ; create a unique marker to indicate the start of the trajectory<br>
&gt; &gt; ncl 52&gt;<br>
&gt; &gt; ncl 53&gt;       first@gsMarkerSizeF  = 8.0<br>
&gt; &gt; ncl 54&gt;       first@gsMarkerColor  = &quot;green&quot;<br>
&gt; &gt; ncl 55&gt;<br>
&gt; &gt; ncl 56&gt;       gsn_polymarker(wks,map,xpt(0),ypt(0),first)<br>
&gt; &gt; ncl 57&gt;       delete(first@gsMarkerColor)<br>
&gt; &gt; ncl 58&gt;       delete(first@gsMarkerSizeF)<br>
&gt; &gt;<br>
&gt; &gt; ncl 59&gt;    end do<br>
&gt; &gt; ncl 60&gt;    draw(map)<br>
&gt; &gt; ncl 61&gt;    frame(wks)<br>
&gt; &gt; ncl 62&gt;<br>
&gt; &gt; ncl 63&gt; end<br>
&gt; &gt;<br>
&gt; &gt; warning:fbinrecread: size specified is greater than record size, filling with missing values<br>
&gt; &gt; fatal:Illegal subscript. Subscripts must be integer when not using coordinate indexing<br>
&gt; &gt; fatal:[&quot;Execute.c&quot;:8126]:Execute: Error occurred at or near line 37<br>
&gt; &gt;<br>
&gt; &gt; ;;;;;;;*****************************<br>
&gt; &gt;<br>
&gt; &gt; Thanks again!<br>
&gt; &gt;<br>
&gt; &gt; Cheers!<br>
&gt; &gt; Carlos Batista<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt; 2014-12-06 23:10 GMT-02:00 Gustavo Correa &lt;<a href="mailto:gus@ldeo.columbia.edu" target="_blank">gus@ldeo.columbia.edu</a>&gt;:<br>
&gt; &gt; Hi Carlos<br>
&gt; &gt;<br>
&gt; &gt; Binary files are a pain.<br>
&gt; &gt; You need to know how they were written (Fortran or C, sequential or direct access, the number<br>
&gt; &gt; type that was written: 4-byte real, 8-byte real, 4-byte integer, etc,<br>
&gt; &gt; if there are record separators, etc), then choose the right function to read the file based<br>
&gt; &gt; on this information.<br>
&gt; &gt; Better avoid them, use self describing formats like NetCDF,<br>
&gt; &gt; or for small amounts of data just plain ascii.<br>
&gt; &gt;<br>
&gt; &gt; Do you know any of the information above of your data file?<br>
&gt; &gt; Can you at least do:<br>
&gt; &gt;<br>
&gt; &gt; ls -l dados.bin<br>
&gt; &gt;<br>
&gt; &gt; Anyway, do you have a single stream of 250 data points (ie. a single &quot;trajectory&quot;)?<br>
&gt; &gt; If this is the case (and the error message suggests this) you should instruct the<br>
&gt; &gt; reading function to read only those 250 data points.<br>
&gt; &gt; It sounds as you have only one trajectory, not 100, but it is hard to tell.<br>
&gt; &gt; If this is the case, you need to change the example script more than just<br>
&gt; &gt; the data reading routine, to match the data you have.<br>
&gt; &gt;<br>
&gt; &gt; In addition, if you don&#39;t have the time information written to the file,<br>
&gt; &gt; you should not try to read it, ie. remove this:<br>
&gt; &gt; &gt;  time= fbinrecread(&quot;dados.bin&quot;,1,(/ntime/),&quot;float&quot;)<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt; Also, the error message suggests that the file was not written by Fortran,<br>
&gt; &gt; maybe it was written by a C program.<br>
&gt; &gt; Have you tried cbinread instead?<br>
&gt; &gt; Say, something like this:<br>
&gt; &gt;<br>
&gt; &gt; &gt; big = cbinread(&quot;dados.bin&quot;,(/1,ntime,1/),&quot;float&quot;)<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt; I hope this helps,<br>
&gt; &gt; Gus Correa<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt; On Dec 6, 2014, at 1:26 PM, Carlos Batista wrote:<br>
&gt; &gt;<br>
&gt; &gt; &gt; Hi Gustavo, How are you?<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; My file is in the binary format.<br>
&gt; &gt; &gt; I have only one variable over time (250 Timesteps).<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; In NCl I tried to enter the information by modifying the size of the read data<br>
&gt; &gt; &gt; ;*******************************************************************<br>
&gt; &gt; &gt; ; 1 variables x 250 x 100 Timesteps trajectories<br>
&gt; &gt; &gt; Ntime = 250<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; big fbinrecread = (&quot;my_data.bin&quot; 0, (/ 1, Ntime, 100 /), &quot;float&quot;)<br>
&gt; &gt; &gt; time = fbinrecread (&quot;my_data.bin&quot;, 1, (/ Ntime /), &quot;float&quot;)<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; ;*********************************************************************<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; Another thing I did not understand is why the existence of only 100 trajectories. If I want more I can change this value?<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; **********************************see the error*****************************<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; carlos@carlos-Lenovo-IdeaPad-Z400-Touch:~/area/$ ncl<br>
&gt; &gt; &gt;  Copyright (C) 1995-2013 - All Rights Reserved<br>
&gt; &gt; &gt;  University Corporation for Atmospheric Research<br>
&gt; &gt; &gt;  NCAR Command Language Version 6.1.2<br>
&gt; &gt; &gt;  The use of this software is governed by a License Agreement.<br>
&gt; &gt; &gt;  See <a href="http://www.ncl.ucar.edu/" target="_blank">http://www.ncl.ucar.edu/</a> for more details.<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; ncl 0&gt; load &quot;$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_code.ncl&quot;<br>
&gt; &gt; &gt; ncl 1&gt; load &quot;$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_csm.ncl&quot;<br>
&gt; &gt; &gt; ncl 2&gt; load &quot;$NCARG_ROOT/lib/ncarg/nclscripts/csm/contributed.ncl&quot;<br>
&gt; &gt; &gt; ncl 3&gt; begin<br>
&gt; &gt; &gt; ncl 4&gt;  ntime = 250<br>
&gt; &gt; &gt; ncl 5&gt; big = fbinrecread(&quot;dados.bin&quot;,0,(/1,ntime,100/),&quot;float&quot;)<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; ncl 6&gt;  time= fbinrecread(&quot;dados.bin&quot;,1,(/ntime/),&quot;float&quot;)<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; ncl 7&gt;  wks = gsn_open_wks(&quot;ps&quot;,&quot;traj&quot;)<br>
&gt; &gt; &gt; ncl 8&gt; ;*********************************************<br>
&gt; &gt; &gt; ncl 9&gt; ; color preps<br>
&gt; &gt; &gt; ncl 10&gt; ;*********************************************<br>
&gt; &gt; &gt; ncl 11&gt;   cnLevels=fspan(34.5,34.8,8)<br>
&gt; &gt; &gt; ncl 12&gt;   cmap = RGBtoCmap (&quot;redyellowblue.rgb&quot;)<br>
&gt; &gt; &gt; ncl 13&gt;   gsn_define_colormap (wks,cmap)<br>
&gt; &gt; &gt; ncl 14&gt;<br>
&gt; &gt; &gt; ncl 15&gt;    res            = True<br>
&gt; &gt; &gt; ncl 16&gt;    res@gsnDraw    = False<br>
&gt; &gt; &gt; ncl 17&gt;    res@gsnFrame   = False<br>
&gt; &gt; &gt; ncl 18&gt;    res@vpWidthF   = 0.80<br>
&gt; &gt; &gt; ncl 19&gt;    res@vpHeightF  = 0.80<br>
&gt; &gt; &gt; ncl 20&gt;    res@mpMaxLatF  = -20<br>
&gt; &gt; &gt; ncl 21&gt;    res@mpMinLatF  = -60<br>
&gt; &gt; &gt; ncl 22&gt;    res@mpMinLonF  = -75<br>
&gt; &gt; &gt; ncl 23&gt;    res@mpMaxLonF  = -25<br>
&gt; &gt; &gt; ncl 24&gt;<br>
&gt; &gt; &gt; ncl 25&gt; ; label bar resources<br>
&gt; &gt; &gt; ncl 26&gt;    res_lb                    = True<br>
&gt; &gt; &gt; ncl 27&gt;    res_lb@vpWidthF           = 0.60<br>
&gt; &gt; &gt; ncl 28&gt;    res_lb@vpHeightF          = 0.10<br>
&gt; &gt; &gt; ncl 29&gt;    res_lb@lbPerimOn          = False<br>
&gt; &gt; &gt; ncl 30&gt;    res_lb@lbOrientation      = &quot;Horizontal&quot;<br>
&gt; &gt; &gt; ncl 31&gt;    res_lb@lbLabelStride      = 2<br>
&gt; &gt; &gt; ncl 32&gt;    res_lb@lbLabelAlignment   = &quot;InteriorEdges&quot;<br>
&gt; &gt; &gt; ncl 33&gt;    res_lb@lbFillColors       = cmap(2:,:)<br>
&gt; &gt; &gt; ncl 34&gt;    res_lb@lbMonoFillPattern  = True<br>
&gt; &gt; &gt; ncl 35&gt;    res_lb@lbLabelFontHeightF = 0.015<br>
&gt; &gt; &gt; ncl 36&gt;<br>
&gt; &gt; &gt; ncl 37&gt;    res@tiMainString    = &quot;Trajectories colored by salinity (ppt)&quot;  ; title<br>
&gt; &gt; &gt; ncl 38&gt;<br>
&gt; &gt; &gt; ncl 39&gt;    map = gsn_csm_map_ce(wks,res)<br>
&gt; &gt; &gt; ncl 40&gt; ;*********************************************<br>
&gt; &gt; &gt; ncl 41&gt; ; trajectory parameters<br>
&gt; &gt; &gt; ncl 42&gt; ;*********************************************<br>
&gt; &gt; &gt; ncl 43&gt;    xpt = new(ntime,float)<br>
&gt; &gt; &gt; ncl 44&gt;    ypt = new(ntime,float)<br>
&gt; &gt; &gt; ncl 45&gt;    traj = (/1,10,53,67,80/)<br>
&gt; &gt; &gt; ncl 46&gt;<br>
&gt; &gt; &gt; ncl 47&gt; ;*********************************************<br>
&gt; &gt; &gt; ncl 48&gt; ; some plot parameters<br>
&gt; &gt; &gt; ncl 49&gt; ;*********************************************<br>
&gt; &gt; &gt; ncl 50&gt;    pres                  = True<br>
&gt; &gt; &gt; ncl 51&gt;    pres@gsLineThicknessF = 2.0<br>
&gt; &gt; &gt; ncl 52&gt;<br>
&gt; &gt; &gt; ncl 53&gt;    mres  = True<br>
&gt; &gt; &gt; ncl 54&gt;    first = True<br>
&gt; &gt; &gt; ncl 55&gt; ;********************************<br>
&gt; &gt; &gt; ncl 56&gt;    do i = 0,dimsizes(traj)-1<br>
&gt; &gt; &gt; ncl 57&gt;       ypt = big(2,:,traj(i))<br>
&gt; &gt; &gt; ncl 58&gt;       xpt = big(1,:,traj(i))<br>
&gt; &gt; &gt; ncl 59&gt;       sst = big(8,:,traj(i))<br>
&gt; &gt; &gt; ncl 60&gt;<br>
&gt; &gt; &gt; ncl 61&gt;      do j=0,dimsizes(ypt)-2<br>
&gt; &gt; &gt; ncl 62&gt;         pres@gsLineColor=GetFillColor(cnLevels,cmap,avg( (/sst(j),sst(j+1)/)))<br>
&gt; &gt; &gt; ncl 63&gt;         gsn_polyline(wks,map,(/xpt(j),xpt(j+1)/),(/ypt(j),ypt(j+1)/),pres)<br>
&gt; &gt; &gt; ncl 64&gt;      end do<br>
&gt; &gt; &gt; ncl 65&gt;<br>
&gt; &gt; &gt; ncl 66&gt;<br>
&gt; &gt; &gt; ncl 67&gt; ; create a unique marker to indicate the start of the trajectory<br>
&gt; &gt; &gt; ncl 68&gt;<br>
&gt; &gt; &gt; ncl 69&gt;       first@gsMarkerSizeF  = 9.0<br>
&gt; &gt; &gt; ncl 70&gt;       first@gsMarkerColor  = &quot;red&quot;<br>
&gt; &gt; &gt; ncl 71&gt;<br>
&gt; &gt; &gt; ncl 72&gt;       gsn_polymarker(wks,map,xpt(0),ypt(0),first) ; draw start of traj<br>
&gt; &gt; &gt; ncl 73&gt;       delete(first@gsMarkerColor)<br>
&gt; &gt; &gt; ncl 74&gt;       delete(first@gsMarkerSizeF)<br>
&gt; &gt; &gt; ncl 75&gt;    end do<br>
&gt; &gt; &gt; ncl 76&gt;    gsn_labelbar_ndc(wks,dimsizes(cnLevels)+1,cnLevels,0.30,0.30,res_lb)<br>
&gt; &gt; &gt; ncl 77&gt;    draw(map)<br>
&gt; &gt; &gt; ncl 78&gt;    frame(wks)<br>
&gt; &gt; &gt; ncl 79&gt;<br>
&gt; &gt; &gt; ncl 80&gt; end<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; warning:fbinrecread: size specified is greater than record size, filling with missing values<br>
&gt; &gt; &gt; fatal:fbinrecread: 0 or less than zero fortran control word, FILE NOT SEQUENTIAL ACCESS!<br>
&gt; &gt; &gt; fatal:[&quot;Execute.c&quot;:8126]:Execute: Error occurred at or near line 6<br>
&gt; &gt; &gt; **************************************************<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; Thanks!<br>
&gt; &gt; &gt; Carlos<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; 2014-12-06 16:00 GMT-02:00 Gustavo Correa &lt;<a href="mailto:gus@ldeo.columbia.edu" target="_blank">gus@ldeo.columbia.edu</a>&gt;:<br>
&gt; &gt; &gt; Hi Carlos<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; I guess it all depends on how your your input data file looks like.<br>
&gt; &gt; &gt; Is it an ascii, binary, NetCDF, HDF, GRIB file?<br>
&gt; &gt; &gt; NetCDF, HDF, and to some extent GRIB are self describing, and can be read<br>
&gt; &gt; &gt; with NCL&#39;s &quot;addfile&quot; function:<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; <a href="http://www.ncl.ucar.edu/Document/Functions/Built-in/addfile.shtml" target="_blank">http://www.ncl.ucar.edu/Document/Functions/Built-in/addfile.shtml</a><br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; Ascii layout is easy to see directly on the file, and can be read with NCL&#39;s &quot;asciiread&quot; function:<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; <a href="http://www.ncl.ucar.edu/Document/Functions/Built-in/asciiread.shtml" target="_blank">http://www.ncl.ucar.edu/Document/Functions/Built-in/asciiread.shtml</a><br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; Those above are in general they  easier to read than binary,<br>
&gt; &gt; &gt; because the latter can vary in layout and record structure in many different ways.<br>
&gt; &gt; &gt; But you can also read binary, with fbinread, cbinread, fbinrecread, etc,<br>
&gt; &gt; &gt; although all depends on how it was written/created:<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; <a href="http://www.ncl.ucar.edu/Document/Functions/io.shtml" target="_blank">http://www.ncl.ucar.edu/Document/Functions/io.shtml</a><br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; You say<br>
&gt; &gt; &gt; &quot;I have data with just 1 variable to 250 times.&quot;<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; Is it a NetCDF or HDF file?<br>
&gt; &gt; &gt; Is it an ascii column file with 250 lines, one value per line?<br>
&gt; &gt; &gt; Does it have a column for time also, say one &quot;time value&quot; pair per line?<br>
&gt; &gt; &gt; Is it binary?  If binary, how is it organized?<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; The example traj_1.ncl reads a file with this layout:<br>
&gt; &gt; &gt; ******<br>
&gt; &gt; &gt; ; note this trajectory file contains data in the form of<br>
&gt; &gt; &gt; ; 9 variables x 131 timesteps x 100 trajectories<br>
&gt; &gt; &gt;    ntime = 131<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt;    big = fbinrecread(&quot;traj.bin&quot;,0,(/9,ntime,100/),&quot;float&quot;)<br>
&gt; &gt; &gt;    time= fbinrecread(&quot;traj.bin&quot;,1,(/ntime/),&quot;float&quot;)<br>
&gt; &gt; &gt; ******<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; You can change the two &quot;fbinrecread&quot; commands above and<br>
&gt; &gt; &gt; adjust them to your input file layout, but you need to know the input file<br>
&gt; &gt; &gt; type and layout.<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; I hope this helps,<br>
&gt; &gt; &gt; Gus Correa<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; On Dec 6, 2014, at 12:09 PM, Carlos Batista wrote:<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; Hi users<br>
&gt; &gt; &gt; &gt; My name is Carlos and I&#39;m new in the use of NCL...<br>
&gt; &gt; &gt; &gt; I need to know what the structure of the data read by the routine trajectories. <a href="https://www.ncl.ucar.edu/Applications/traj.shtml" target="_blank">https://www.ncl.ucar.edu/Applications/traj.shtml</a> ... for example: traj_1.ncl<br>
&gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; I have data with just 1 variable to 250 times. How can I know the number of trajectories of such data?<br>
&gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; Who has an example with data is read could send for me, please!<br>
&gt; &gt; &gt; &gt; _______________________________________________<br>
&gt; &gt; &gt; &gt; ncl-talk mailing list<br>
&gt; &gt; &gt; &gt; List instructions, subscriber options, unsubscribe:<br>
&gt; &gt; &gt; &gt; <a href="http://mailman.ucar.edu/mailman/listinfo/ncl-talk" target="_blank">http://mailman.ucar.edu/mailman/listinfo/ncl-talk</a><br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt; _______________________________________________<br>
&gt; &gt; &gt; ncl-talk mailing list<br>
&gt; &gt; &gt; List instructions, subscriber options, unsubscribe:<br>
&gt; &gt; &gt; <a href="http://mailman.ucar.edu/mailman/listinfo/ncl-talk" target="_blank">http://mailman.ucar.edu/mailman/listinfo/ncl-talk</a><br>
&gt; &gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt; _______________________________________________<br>
&gt; &gt; ncl-talk mailing list<br>
&gt; &gt; List instructions, subscriber options, unsubscribe:<br>
&gt; &gt; <a href="http://mailman.ucar.edu/mailman/listinfo/ncl-talk" target="_blank">http://mailman.ucar.edu/mailman/listinfo/ncl-talk</a><br>
&gt; &gt;<br>
&gt; &gt; _______________________________________________<br>
&gt; &gt; ncl-talk mailing list<br>
&gt; &gt; List instructions, subscriber options, unsubscribe:<br>
&gt; &gt; <a href="http://mailman.ucar.edu/mailman/listinfo/ncl-talk" target="_blank">http://mailman.ucar.edu/mailman/listinfo/ncl-talk</a><br>
&gt;<br>
&gt; _______________________________________________<br>
&gt; ncl-talk mailing list<br>
&gt; List instructions, subscriber options, unsubscribe:<br>
&gt; <a href="http://mailman.ucar.edu/mailman/listinfo/ncl-talk" target="_blank">http://mailman.ucar.edu/mailman/listinfo/ncl-talk</a><br>
&gt;<br>
&gt; _______________________________________________<br>
&gt; ncl-talk mailing list<br>
&gt; List instructions, subscriber options, unsubscribe:<br>
&gt; <a href="http://mailman.ucar.edu/mailman/listinfo/ncl-talk" target="_blank">http://mailman.ucar.edu/mailman/listinfo/ncl-talk</a><br>
<br>
_______________________________________________<br>
ncl-talk mailing list<br>
List instructions, subscriber options, unsubscribe:<br>
<a href="http://mailman.ucar.edu/mailman/listinfo/ncl-talk" target="_blank">http://mailman.ucar.edu/mailman/listinfo/ncl-talk</a><br>
</div></div></blockquote></div></div></div><br></div>
<br>_______________________________________________<br>
ncl-talk mailing list<br>
List instructions, subscriber options, unsubscribe:<br>
<a href="http://mailman.ucar.edu/mailman/listinfo/ncl-talk" target="_blank">http://mailman.ucar.edu/mailman/listinfo/ncl-talk</a><br>
<br></blockquote></div><br></div>
</div></div></blockquote></div></div></div><br></div>
</blockquote></div><br></div>
</div></div></blockquote></div><br></div>