Изменить цвет графика в Labtalk с помощью программы Fortran

У меня есть программа на Фортране, которая создает bat-файл, содержащий команды для Origin в Labtalk. В конце Origin покажет график с несколькими графиками. В настоящее время все построенные линии отображаются черным цветом. Теперь я хочу изменить цвет графиков. Может кто-нибудь сказать мне, где и какую команду я должен изменить? Я думаю, что это должно произойти где-то здесь:

     ...
     ch1=ADJUSTL(ch1)
     WRITE(ch2,'(I3)')JJY(i)
     ch2=ADJUSTL(ch2)

     WRITE(4,489)CHAR(77+i),'aX'//ch1(1:LNBLNK(ch1))//'Y'
     1//ch2(1:LNBLNK(ch2))
     enddo
 489    FORMAT(1H ,'%',A1,'=',A8,';')
     ENDIF
     FLINE='count='//NCHAR(1:LNBLNK(NCHAR))//';'
     WRITE(4,'(1A260)')FLINE
     WRITE(4,490)
 490    FORMAT(1H ,'window -n Data;',
     1/1H ,'open -w %A;',
     1/1H ,'window -r %H Data ;',
     1/1H ,'worksheet -t 1 4; worksheet -t 2 1;',
     1/1H ,'worksheet -n 1 %M;')
     do i=1,NUMB
     WRITE(4,491)i+1,CHAR(77+i)
     enddo
 491    FORMAT(1H ,'worksheet -n ',I1,' %',A1,';')
     WRITE(4,492)
 492    FORMAT(1H ,'window -i ;',
     1/1H ,'window -n plot Plot ;')
     do i=1,NUMB
     WRITE(4,493)CHAR(77+i),i+1
     enddo
 493   FORMAT(' %S=Data_%',A1,';',
     1/1H ,'set %S -x Data_%M; set %S -c ',I1,';',
     1/1H ,'layer -i %S',
     1/1H ,'set %S -w 1000;'     )      

     WRITE(4,494)
 494   FORMAT(1H ,'axis -ps x g 3;axis -ps x a 3;axis -ps x l 1;',
     1/1H ,'axis -ps y g 3;axis -ps y a 3;axis -ps y l 1;',
     1/1H ,'layer.x.grid.majorwidth=0.3;layer.x.grid.minorwidth=0.1;',
     1/1H ,'layer.x.grid.majorcolor=color(black);layer.x.grid.minor      
     1color=color(black);', 
     1/1H ,'page -o l;',
     1/1H ,'rescale;')
     CLOSE(UNIT=4)
     ...

1 ответ

Решение

Из документации Labtalkset:

Синтаксис: установить имя -c значение

Установите цвет линии графика и цвет края символа, следуя цветовой палитре [...]

set %c -c 2; // set color to be red
set %c -c 102; // set the next column on the right to be color index
set %c -c 524390; // set the next column on the left to be color index

На самом деле это делается в вашем коде:

 do i=1,NUMB
 WRITE(4,493)CHAR(77+i),i+1
 enddo
 493   FORMAT(' %S=Data_%',A1,';',
     1/1H ,'set %S -x Data_%M; set %S -c ',I1,';',
     1/1H ,'layer -i %S',
     1/1H ,'set %S -w 1000;'     ) 

Не то, что вы выбрали I1 для обозначения значения цвета. Может быть, ваш номер>9 в какой-то момент? Не могли бы вы проверить полученный файл?

[Обратите внимание, что мой ответ только из документации. Я понятия не имею о Labtalk вообще. ]

Другие вопросы по тегам