Как установить метку оси с заголовком столбца в gnuplot?

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

first second
1 1 
2 1
3 6
4 9

В gnuplot как сделать так, чтобы файл данных был нанесен с использованием заголовка столбца в качестве метки оси? например позвонив

plot datafile using 1:2

i получим xaxis с меткой first, а yaxis помечен как second?

edit: Я знаю, что я могу использовать заголовок столбца как ключевую запись через set key auto title column head, однако это не совсем то, что я ищу.

Ответ 1

Чтобы разработать предложение @andyras, вот как вы можете это сделать:

datafile = 'filename.txt'
firstrow = system('head -1 '.datafile)
set xlabel word(firstrow, 1)
set ylabel word(firstrow, 2)
plot datafile using 1:2

Вы должны построить с явным выражением using, иначе gnuplot будет жаловаться на bad data on line 1.

Ответ 2

Я не думаю, что эта функция встроена в gnuplot; вам, вероятно, придется использовать awk-подобную утилиту, чтобы вытащить эти метки из файла данных.

Вы можете попробовать отправить запрос функции на сайт gnuplot sourceforge и получить отзывы от разработчиков там.

Ответ 3

Я думаю, что это поддерживается. Вы просто должны использовать "":

plot 'file' используя "first": "second"

Хотя, если вы хотите использовать математику в своей используемой спецификации, вам понадобится также функция столбца ("")

plot 'file' используя "first":( column ( "second" ) - (столбец ( "thrid" ))

(Использовать только цитированные имена заголовков с математикой для меня все равно не работало.)