Я не думаю, что приведенный выше ответ очень полезен, потому что, поскольку я пишу это, первый метод результата Google крайне неудовлетворителен.
Он использует способность gnuplot читать стандартный вывод для генерации данных, так что
plot "< echo '1 2'"
поместит одну точку данных в точку x = 1, y = 2.
Это имеет несколько недостатков, которые делают его практически непригодным для использования.
Во-первых, нет хорошего способа передачи переменных в этот метод, потому что он уже использует оба типа кавычек. Поэтому использование макросов для передачи переменных в операторах sprintf отключено, поскольку необходим третий тип цитирования.
Во-вторых, требуется запустить команду plot, чтобы вызвать точку. Это означает, что если я хочу построить более одной точки, я должен добавить операторы графика к основному оператору графика. Если я хочу сделать это каким-либо образом с помощью сценариев, а не просто как явный список, я возвращаюсь к необходимости запускать макрос, который, как я уже указывал, не работает для этой техники.
У Gnuplot есть две техники, которые намного больше подходят для получения одной точки.
Во-первых, если вам просто нужен маркер в точке, вы можете использовать тип объекта gnuplot для построения круга в точке, например
set object circle at <x>,<y> size <r>
где <x>
и <y>
- координаты точки и <r>
размер круга, который нужно нарисовать. Круг может быть цветным, заполненным, прозрачным и т. Д., Как и любой объект gnuplot.
Во-вторых, если вам действительно нужен маркер с определенным стилем точек, вы можете использовать label
команду gnuplot . Установив текст метки пустым и назначив тип точки, точка будет нарисована в указанной координате, например,
set label <i> "" at <x>,<y> point pointtype <n>
устанавливает точку с индексом тега <i>
в точке x=<x>
, y=<y>
с типом точки <n>
(в терминале wxt по умолчанию n = 1 - красные крестики, n = 2 - зеленые соли, n = 3 - синие звездочки и т. д.)
Таким образом, можно задать несколько точек для построения графика, и можно выдать отдельную команду построения для другой функции без необходимости загромождать оператор заговора со всеми отдельными точками, которые будут отображаться.