Vamos limpar seus dados antecipadamente de ( e ) . O comando do linux sed é uma boa opção ( column -t dará um bom formato)
sed 's/[(,)]/\t/g' data.dat | column -t > data02.dat
em que supomos que seu arquivo original tenha o nome data.dat e que criemos um novo arquivo chamado data02.dat . O novo arquivo terá 8 colunas. Em gnuplot você pode acessar uma única coluna com a opção using ($1):($8) para usar dados da primeira coluna como x e dados da oitava coluna para o y .
Agora o truque : define uma função que responderá com y se estiver satisfeito com uma condição, e com mais infinito se for não. Isso porque o gnuplot pula o y com valores infinitos. Então, em gnuplot você pode escrever
myf(y,t)= t == 0 ? y : 1.0/0.
plot 'data2.dat' us ($1):(myf($2,$8))
Claro que você pode fazer isso de uma forma mais compacta, mas para escrever isso, é mais compreensível.
Para a segunda questão, é possível definir uma condição diferente na função
myf2(x,y)= ( 0.001 > abs(x) ) && ( 0.001 > abs(y) ) ? y : 1.0/0
plot 'data2.dat' us ($1):(myf2($1,$2))
em que abs(x) retorna o valor absoluto de um número (o número sem um sinal).
Nota: ok eu estava com preguiça em vez de using escrevo apenas us . Gnuplot entende isso.