Анимация Gnuplot, как печатать текст из файла данных на график

#file #animation #printing #gnuplot

Вопрос:

Я хочу построить столбцы 1 и 2 и распечатать столбец 3 из файла данных, однако я не могу найти способ прямого считывания из файла данных в x массив или в массив x(n) , в основном операция заключается в следующем:

 do for[j=0:n:1]{
    unset label
    x = #row j, column 3 of 'file-name.dat'
    set label x at 2000, 4000 ...
    plot 'file-name.dat' u 1:2 ....
}
 

Комментарии:

1. Пожалуйста, уточните, что именно вы хотите видеть в сюжете. gnuplot прекрасно способен выводить текст из файла данных непосредственно с помощью with labels стиля графика.

Ответ №1:

Ваш вопрос не очень ясен. Пожалуйста, всегда приводите примеры данных. Как выглядят ваши данные и что именно вы хотите построить? Вы хотите построить полный столбец 1 и 2 или только строку j ? Проверьте следующий пример и проверьте help every и help labels .

Код:

 ### plotting labels for animation
reset session

set term gif animate delay 50
set output "SO70101046.gif"

$Data <<EOD
0   0   Time0
1   1   Time1
2   2   Time2
3   3   Time3
4   4   Time4
5   5   Time5
EOD

stats $Data nooutput   # get the number of rows
N = STATS_records

set xrange[-1:6]
set yrange[-1:6]

do for [j=0:N-1] {
    plot $Data u 1:2 every ::j::j w lp pt 7 title "Data", 
         ''    u (0):(5):3 every ::j::j w labels notitle
}
set output
### end of code
 

Результат:

введите описание изображения здесь

Комментарии:

1. Спасибо!!!! Я изменил столбец 3 в файле данных с поплавков на строки, и ваше решение сработало.

2. @akvadiv рад слышать. На StackOverflow: Upvote=ответ был полезен, Принять=ответ решил проблему.