2013-04-18 2 views
10

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

first second 
1 1 
2 1 
3 6 
4 9 

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

plot datafile using 1:2 

я получаю Xaxis помечены first и YAxis помечены second?

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

ответ

1

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

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

+1

'awk' +' head -1' должен это сделать. – mgilson

-1

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

сюжет «Файл», используя «первый»: «второй»

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

участка 'файла' с помощью "первого" :(колонки ("второй") - (колонка ("thrid"))

(Использование только цитируемых имен заголовков wi . Е математика не работает для меня, во всяком случае)

+1

С помощью вашего метода вы можете выбирать столбцы по строкам заголовка вместо 1 и 2, но эти заголовки не используются в качестве меток осей. – Christoph

6

Разработать предложение @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.

Смежные вопросы