python: gráfico logarítmico de dispersión

En mi código, tomo el logaritmo de dos series de datos y las trazo. Me gustaría cambiar cada valor de tick del eje x elevándolo a la potencia de e (anti-log de logaritmo natural).

En otras palabras. Quiero graficar los logaritmos de ambas series pero tener el eje x en los niveles.

introduzca la descripción de la imagen aquí

Aquí está el código que estoy usando.

from pylab import scatter import pylab import matplotlib.pyplot as plt import pandas as pd from pandas import Series, DataFrame import numpy as np file_name = '/Users/joedanger/Desktop/Python/scatter_python.csv' data = DataFrame(pd.read_csv(file_name)) y = np.log(data['o_value'], dtype='float64') x = np.log(data['time_diff_day'], dtype='float64') fig = plt.figure() plt.scatter(x, y, c='blue', alpha=0.05, edgecolors='none') fig.suptitle('test title', fontsize=20) plt.xlabel('time_diff_day', fontsize=18) plt.ylabel('o_value', fontsize=16) plt.xticks([-8,-7,-6,-5,-4,-3,-2,-1,0,1,2,3,4]) plt.grid(True) pylab.show() 

matplotlib que matplotlib tome el registro por usted:

 fig = plt.figure() ax = plt.gca() ax.scatter(data['o_value'] ,data['time_diff_day'] , c='blue', alpha=0.05, edgecolors='none') ax.set_yscale('log') ax.set_xscale('log') 

Si está utilizando todos los mismos marcadores de tamaño y color, es más rápido usar plot

 fig = plt.figure() ax = plt.gca() ax.plot(data['o_value'] ,data['time_diff_day'], 'o', c='blue', alpha=0.05, markeredgecolor='none') ax.set_yscale('log') ax.set_xscale('log')