Voglio aggiungere una linea dell'asse x a 0 a una figura matlab in modo da poter confrontare i miei dati per vedere se è positivo o negativo quando si salvano le figure in un jpg. Qual è il modo migliore per farlo? So che puoi usare line() ma sembra solo ingombrante perché devi specificare gli intervalli x e y. C'è un modo più semplice? Grazie!Come aggiungere una linea dell'asse x a una figura? (matlab)
risposta
Non credo ci sia un modo integrato che sia più conveniente. Io uso hline()
e vline()
da FileExchange, che funziona come un fascino:
si potrebbe ottenere questo intervallo x subito dopo la cifra è stato creato. Va un po 'di qualcosa come questo:
x=-2:5;
y=x.^2-1;
figure()
plot(x,y);
xlim = get(gca,'xlim'); %Get x range
hold on
plot([xlim(1) xlim(2)],[0 0],'k')
Si noti che se si fa qualsiasi manuale zoom out nella figura, la linea potrebbe dover essere ridisegnato per andare su tutta la nuova gamma x.
Esistono una funzione non documentata graph2d.constantline
:
plot(-2:5, (-2:5).^2-1)
%# vertical line
hx = graph2d.constantline(0, 'LineStyle',':', 'Color',[.7 .7 .7]);
changedependvar(hx,'x');
%# horizontal line
hy = graph2d.constantline(0, 'Color',[.7 .7 .7]);
changedependvar(hy,'y');
La cosa bella è che implementa internamente un listener per i limiti assi (maniglie cambiano come pan, zoom, ecc ..). Quindi le linee sembrerebbero estendersi all'infinito.
Un comando vline
e hline
come in GNU R sarebbe fantastico, ma non sono riuscito a trovare una soluzione più breve di
plot(1:10,sin(1:10));
line(xlim,[0 0],'Color','r')
Questo è un metodo molto elegante! –
- Disegna i tuoi dati
plot()
comando ostem()
. Si aprirà una finestra di figura. - Quindi, nella finestra della figura, fare clic sul comando [insert] dalla barra dei menu , verrà visualizzato un menu a discesa.
- Da questo menu fare clic sul comando [linea], ora la forma del cursore
diventerà un segno più. - Ora è possibile tracciare una linea dovunque, sia orizzontale che
verticale o inclinata. - È possibile modificare le proprietà di linea facendo clic destro sulla linea
, un menu apparirà da cui è possibile scegliere i vostri desideri
proprietà. - Se si desidera avere qualche segno di spunta sulla linea, è possibile utilizzare l'opzione Aggiungi testo e posizionare il testo dove si desidera.
- Se si desidera avere un codice per la vostra figura, cliccare sul menu [File] e poi cliccare su [generatecode] opzione, un nuovo editor di testo si aprirà
finestra, è possibile salvare questo codice per un ulteriore uso. In bocca al lupo.
- 1. MATLAB: stampa una figura in pdf come la figura mostrata nel MATLAB
- 2. MATLAB: caratteri figura
- 3. Controlla se l'handle matlab è una maniglia figura
- 4. Come disegnare una linea su un'immagine in matlab?
- 5. Scrivi automaticamente una figura in un file in MATLAB
- 6. Più grafici in una figura
- 7. Come aggiungere un effetto luminoso a una linea per OpenGL?
- 8. Matlab - come fare una leggenda personalizzato
- 9. Matlab aggiungi del testo all'esterno della figura
- 10. Come aggiungere una linea orizzontale in una tabella?
- 11. Come posso associare una funzione pyplot a un'istanza di figura?
- 12. Come aggiungere frecce ai grafici linea in Matlab?
- 13. Creare una figura conteggiata
- 14. Come si crea una matrice di immagini con una linea disegnata in MATLAB?
- 15. Come modificare il titolo della finestra di una figura di disegno MATLAB?
- 16. Matlab: Salva figura con sfondo trasparente
- 17. Come posso aggiungere una variabile a console.log?
- 18. Ingrandisci automaticamente la figura in Matlab
- 19. Tracciare una linea per due punti
- 20. Matplotlib - Mostra solo una figura
- 21. Come ottenere una derivata di una funzione in MATLAB?
- 22. Matlota: riaprire una figura chiusa?
- 23. Come mostrare più immagini in una figura?
- 24. Come si disegna una linea utilizzando Cocos2D-X?
- 25. Matlab: come ottenere tutte le maniglie degli assi in una maniglia figura?
- 26. come stampare la figura matlab all'interno dell'applicazione winform?
- 27. Stretto rettangolo attorno al PDF di MATLAB figura
- 28. Come aggiungere una linea nella sed se non viene trovata
- 29. Come posso creare una funzione inline a tratti in MATLAB?
- 30. come esportare la figura nel colore eps in matlab
Sembra che la mia versione di Matlab 7.0.1 R14 SP1 mi dia una violazione di segmentazione quando eseguo il codice e non ottengo la linea dell'asse x.:( –
perché il downvote, la tua versione di [MATLAB] (http://en.wikipedia.org/wiki/MATLAB#Release_history) è piuttosto vecchia, e come risulta non esegue la soluzione di cui sopra .. Plus as Ho menzionato, questa è una caratteristica non documentata – Amro
scusate, non pensavo che avrebbe fatto così.Ho provato a annullare l'upvote, ma invece ha causato il downvote.non è molto intuitivo .. =/ora non posso fare nulla dal l'ans è bloccato fino a quando il post non viene modificato e non ho i privilegi di modifica –