Nella risposta ho sostituito i valori "0" con "NaN" perchè così avevi scritto tu nella domanda.
Lo scopo dell'istruzione:
pH(find(pH == 0))=NaN
era solo quello di suggerirti una implementazione alternativa al "ciclo for" che avevi inserito nella domanda.
In realtà è possibile plottare un vettore che contiene valori numerici e "NaN", semplicemente, MatLab, "ignora" i valori "NaN" e:
- se hai scelto come "stile" del grafico di rappresentare solo i markers dei punti, i punti con valore "NaN" non verranno plottati
- se hai scelto come "stile" del grafico, un linea, questa verrà interrotta nei punti con valore "NaN".
Non so dirti se eliminare i punti sia la soluzione migliore.
Dipende molto dal tipo di post-processing che devi fare dei dati e dallo scopo dell'analisi.
Non mi sembra corretto, dal punti di vista dell'analisi dei risultati "cancellare" (nascondere) quelli che "non mi piacciono".
Potrebbe essere utile tenere traccia dei valori "errati" (o "strani" ...) perchè da quelli si possono comunque estrarre delle informazioni o possono essere indice di qualche cosa che "non funziona" correttamente sul quale eventualmente intervenire.
Hope this helps.