Как построить график из значений текстового файла? Текстовый файл выглядит следующим образом:
location count1 count2
HZ 100 193
ES 514 289
FP 70 137
BH 31 187
Я хочу построить эти значения в виде графика в сценарии оболочки. По оси X значения столбца местоположения и по оси Y значения столбцов count1 и count2.
plot "/tmp/temp.txt"
терпит неудачу сBad data on line 1 of file /tmp/temp.txt
. Я думаю, что вам, возможно, просто нужно создать версию файла только с числами, без заголовков строк / столбцов. В качестве альтернативы используйте что-то вроде gnumeric.Ответы:
Использование того же входного файла (ex.tsv) и создание сценария gnuplot для лучшего контроля над деталями
и gnuploting данные:
мы видим соответствующую гистограмму.
Чтобы создать файл png (загрузить и показать в SO), добавьте еще 2 строки:
источник
Рабочее решение для gnuplot v5.0:
Файл входных данных
loc.dat
:скрипт gnuplot
locations.plt
:set title "Location data"
- основной сюжетset xlabel "location"
- установка метки дляx
осиset ylabel "count"
- установка метки дляy
осиset grid
- добавление сетки к сюжету(column(0)):2:xtic(1)
- диапазон столбцов,(column(0))
- поскольку 1-й столбец во входном файле имеет нечисловые значения, нам нужно имитировать 1-й числовой столбец, поскольку gnuplot ожидает только числовые значения в немw l
- означает со строками соединить все точки данных со строкамиИнтерактивный запуск:
Предоставленный результат:
источник
gnuplot> load "locations.plt"
, gnuplot требует, чтобыload locations.plt
это не сработало, и вы получите «внутреннюю ошибку: оператор STRING применен к неопределенной или не-STRING переменной», если вы ее забудете.