python - xticklabel - plt plot xticks
matplotlib tick axis notación con superÃndice (2)
Puede definir las marcas como cadenas y asignarlas:
mport numpy as np
import matplotlib.pyplot as plt
band = np.linspace(0,10**12,100)
y = band
plt.plot(band,y)
plt.xlabel("Frequencies")
plt.vlines(10**3, min(y), max(y),colors = ''black'', label = ''kilo Hz'')
plt.vlines(10**6, min(y), max(y),colors = ''black'', label = ''mega Hz'')
string_labels = []
for i in range(0,len(y),10):
string_labels.append(r"$10^{%02d}$" % (i/10.0))
plt.xticks(np.linspace(0,10**12,10),string_labels)
plt.legend()
plt.show()
Me gustaría producir alguna trama sobre las frecuencias. Quiero tener un eje x con notación de superíndice como aquí . Además, necesito líneas verticales con anotación vertical, kilo y mega Hz.
import numpy as np
import matplotlib.pyplot as plt
band = np.linspace(0,10**12,100)
y = band
plt.plot(band,y)
plt.xlabel(''Frequencies'')
plt.vlines(10**3, min(y), max(y),colors = ''black'', label = ''kilo Hz'')
plt.vlines(10**6, min(y), max(y),colors = ''black'', label = ''mega Hz'')
plt.legend()
plt.show()
Intenté usar el ticker pero no puedo entender cómo configurarlo. Intenté seguir algunos ejemplos, pero obtuve un error como AttributeError: ''Figure'' object has no attribute ''ticklabel_format''
Ya paso bastante tiempo con él y no sé cómo seguir adelante.
En general, necesito el eje x formateado de la misma manera, que si plt.xscale(''log'')
pero quiero mantener la escala lineal.
Solo estoy disparando en la oscuridad, pero parece que xlabel toma una variedad de opciones:
http://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.xlabel
Cuando fui a:
http://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.text
Noté que hay una opción de alineación vertical. Tal vez eso es lo que necesitas?