Sugiro usar um shell aqui documento neste caso
#!/bin/bash
function myfun {
cat << EOF | gnuplot -p
plot "$1" using $2:$3
EOF
}
Então
myfun sourcefile 1 3
(1. arg) criará (gráfico de dispersão) para n. coluna (eixo x, 2. arg) e m. coluna (eixo y, 3. arg)
A funçãoé chamada myfun sourcefile 1 3 para o gráfico de dispersão de 1. e 3. coluna do arquivo de origem do arquivo.
#!/bin/bash/gnuplot
myfun(){
plot "$1" using $2:$3
}
myfun sourcefile 1 3
No gnuplot > enredo sourcefile usando 1: 3 funciona perfeitamente. Eu quero que ele seja executado dentro da função. Como?
Sugiro usar um shell aqui documento neste caso
#!/bin/bash
function myfun {
cat << EOF | gnuplot -p
plot "$1" using $2:$3
EOF
}
Então
myfun sourcefile 1 3
Eu realmente não sei que tipo de roteiro é esse. Onde você achou isso? .../bash/gnuplot
parece que alguém está ficando muito confuso.
Mas se você tiver o arquivo com os dados, chame-o de sourcefile
, com a estrutura
whatever x-data y-data
whatever x-data y-data
whatever x-data y-data
você pode ter um gráfico de dispersão da coluna 3 versus a coluna 2 inserindo gnuplot
e no prompt usando:
plot "sourcefile" using 2:3
(Embora seu script pareça estar fazendo plot "sourcefile" using 1:3
, em contraste com sua descrição, e sem aspas, que é um erro de sintaxe no gnuplot a menos que sourcefile
seja uma variável contendo o nome do Arquivo).
Recomendamos que você leia o link