xlabel comando change matlab matlab-figure

comando - ¿Cómo agregar una línea del eje x a una figura?(Matlab)



xlabel latex matlab (6)

  1. Dibuje sus datos por comando plot() o stem() . Se abrirá una ventana de figura.
  2. Luego, en la ventana de la figura, haga clic en el comando [insertar] del
    barra de menú, aparecerá un menú desplegable.
  3. Desde este menú, haga clic en el comando [línea], ahora la forma de la
    el cursor cambiará a un signo más.
  4. Ahora puede dibujar una línea en cualquier lugar que desee, ya sea horizontal o
    vertical o inclinado
  5. Puede cambiar las propiedades de la línea haciendo clic derecho en el
    línea, aparecerá un menú desde el que puede elegir sus deseos
    propiedades
  6. Si desea tener algunas marcas en la línea, puede usar la opción Agregar texto y colocar el texto donde desee.
  7. Si desea tener un código para su figura, haga clic en el menú [archivo] y luego en la opción [Generatecode], un nuevo editor de texto
    La ventana se abrirá, puede guardar este código para su uso posterior. Buena suerte.

Quiero agregar una línea del eje x en 0 a una figura matlab para poder comparar mis datos para ver si es positivo o negativo al guardar las cifras en un jpg. ¿Cuál es la mejor manera de hacer esto? Sé que puede usar la línea () pero parece engorroso porque necesita especificar los rangos xy y. hay una manera mas facil? ¡Gracias!


Desde MATLAB R2018b hay una yline para este propósito:

yline(0)

Dibuja una línea horizontal en y==0 .


Existe una función no documentada 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'');

Lo bueno es que implementa internamente un oyente para los límites de los ejes (los manejadores cambian como paneo, zoom, etc.). Entonces las líneas parecen extenderse hasta el infinito.


Puede obtener este rango x directamente después de que se haya creado la figura. Va un poco algo como esto:

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'')

Tenga en cuenta que si realiza un zoom manual en la figura, es posible que la línea tenga que volver a dibujarse para recorrer todo el nuevo rango x.


Un vline y hline como en GNU R sería genial, pero no pude encontrar una solución más corta que

plot(1:10,sin(1:10)); line(xlim,[0 0],''Color'',''r'')