Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

"every", "x range is invalid"

2,820 views
Skip to first unread message

Igor Kozlov

unread,
Feb 4, 2010, 12:51:28 PM2/4/10
to
Hello all!
I want to type only 2 line in the second block of my data file.
I use the following command:
plot "t1" every 1:1:1:1:1:1
^
x range is invalid.

I have already read help, several manuals and searched in google, but
cannot understand where is the mistake?

I attach the file "t1"
and
source code in Fortran 77, that generated this file
***********************************************************************
# BLOCK = 0

0.000000000000000 1.000000000000000

1.000000000000000 1.000000000000000

2.000000000000000 1.000000000000000

3.000000000000000 1.000000000000000

4.000000000000000 1.000000000000000


# BLOCK = 1

0.000000000000000 0.000000000000000

1.000000000000000 1.000000000000000

2.000000000000000 2.000000000000000

3.000000000000000 3.000000000000000

4.000000000000000 4.000000000000000


# BLOCK = 2

0.000000000000000 0.000000000000000

1.000000000000000 1.000000000000000

2.000000000000000 4.000000000000000

3.000000000000000 9.000000000000000

4.000000000000000 16.000000000000000

***********************************************************************
PROGRAM test
IMPLICIT NONE
INTEGER N_WRITE, N_OPEN_W
INTEGER I_BLOCK, I_LINE
CHARACTER ADR_FILE*200

ADR_FILE='/home/gnuplot/t1'

OPEN(UNIT=11,STATUS='UNKNOWN',FILE=ADR_FILE,
*ACCESS='SEQUENTIAL',FORM='FORMATTED',ERR=903,IOSTAT=N_OPEN_W,
*BLANK='NULL')

DO 2 I_BLOCK = 0,2

WRITE (UNIT=11,FMT=117,IOSTAT=N_WRITE,ERR=904) I_BLOCK
117 FORMAT ('# BLOCK = ',I1,/)

DO 1 I_LINE = 0,4

WRITE (UNIT=11,FMT=130,IOSTAT=N_WRITE,ERR=904)
*DBLE(I_LINE), DBLE(I_LINE)**DBLE(I_BLOCK)
130 FORMAT (' ',F18.15,' ',F18.15,/)

1 CONTINUE

WRITE (UNIT=11,FMT=120,IOSTAT=N_WRITE,ERR=904)
120 FORMAT (//,//)

2 CONTINUE

CLOSE(UNIT=11)

RETURN

903 PRINT *, 'ERROR = ', N_OPEN_W, 'OPENING OUT FILE'
RETURN
904 PRINT *, 'ERROR =', N_WRITE, 'WRITING TO OUT FILE'
RETURN

END

Hans-Bernhard Bröker

unread,
Feb 4, 2010, 1:42:44 PM2/4/10
to
Igor Kozlov wrote:
> Hello all!
> I want to type only 2 line in the second block of my data file.
> I use the following command:
> plot "t1" every 1:1:1:1:1:1
> ^
> x range is invalid.

Your data file has way too many empty records (a.k.a. blank lines) to be
interpreted by gnuplot in the way you expect. In particular, this:

> # BLOCK = 0
>
> 0.000000000000000 1.000000000000000
>
> 1.000000000000000 1.000000000000000
>
> 2.000000000000000 1.000000000000000
>
> 3.000000000000000 1.000000000000000
>
> 4.000000000000000 1.000000000000000
>

is not one data block of 5 points, as you apparently intended. It's a
sequence of 5 blocks of one data point each, instead. Therefore there's
not a single data point that fits your "every" selection arguments, and
thus nothing to plot.

0 new messages