In molte funzioni di disegno MATLAB, è possibile specificare il colore come stringa o come vettore di 3 elementi che elenca direttamente i valori rosso, verde e blu.Come posso convertire un nome di colore in un vettore RGB a 3 elementi?
Ad esempio, queste due istruzioni sono equivalenti:
plot(x, y, 'Color', 'r');
plot(x, y, 'Color', [1 0 0]);
ci sono 8 colori che possono essere specificati da un valore di stringa: 'r','g','b','c','m','y','k','w'
. Esiste una funzione incorporata di MATLAB che converte queste stringhe in un vettore RGB equivalente?
in realtà, se si apre ismember.m, utilizza for-loops internamente per piccoli set e poi ordina i set di grandi dimensioni, quindi non è ovvio che sia più veloce; ma questo è bello e probabilmente più facile da generalizzare; anche un buon consiglio su rgb.m – Marc
@Marc: è vero, se le prestazioni sono critiche, probabilmente vorrai scrivere i tuoi loop per evitare ulteriori sovraccarichi dal controllo degli input e dalla formattazione che potrebbero derivare dall'uso di ISMEMBER, ma quando la velocità non è t un problema ISMEMBER rende il codice più breve e facile da leggere. – gnovice