Loading src/yapsut/graphics.py +22 −9 Original line number Diff line number Diff line import matplotlib.pyplot as plt import numpy as np class ImshowXT : """ class to handle an improved version of plt.imshow """ def __init__(self,matr,x_values,y_values,**kwargs) : Loading @@ -13,17 +10,25 @@ class ImshowXT : self._im=plt.imshow(matr,**kwargs) self._xv=x_values self._yv=y_values def set_xaxis(self,major_values,major_format) : """ format the x axis for a give list of tick values and a formatting string """ def set_xaxis(self,major_values,major_format,major_at_nearestPixel=False) : """ format the x axis for a give list of major tick values and a formatting string major_at_nearestPixel = True places each major_value at the nearest pixel (default False) """ from matplotlib import pyplot as plt import numpy as np from scipy.interpolate import interp1d self._mxv=major_values self._mxf=major_format # v=self._xv t=np.array([np.argmin(np.abs(k-v)) for k in major_values]) t1=np.arange(len(v)) # if major_at_nearestPixel : t=np.array([np.argmin(np.abs(k-v)) for k in major_values]) else : itp=interp1d(v,t1,fill_value='extrapolate') t=itp(major_values) # plt.xticks(t,np.interp(t,t1,v)) tt=plt.gca().get_xticklabels() for ik in range(len(tt)) : Loading @@ -31,17 +36,25 @@ class ImshowXT : o1=major_format%o tt[ik].set_text(o1) plt.gca().set_xticklabels(tt) def set_yaxis(self,major_values,major_format) : """ format the y axis for a give list of tick values and a formatting string """ def set_yaxis(self,major_values,major_format,major_at_nearestPixel=False) : """ format the y axis for a give list of major tick values and a formatting string major_at_nearestPixel = True places each major_value at the nearest pixel (default False) """ from matplotlib import pyplot as plt import numpy as np from scipy.interpolate import interp1d self._myv=major_values self._myf=major_format # v=self._yv t=np.array([np.argmin(np.abs(k-v)) for k in major_values]) t1=np.arange(len(v)) # if major_at_nearestPixel : t=np.array([np.argmin(np.abs(k-v)) for k in major_values]) else : itp=interp1d(v,t1,fill_value='extrapolate') t=itp(major_values) # plt.yticks(t,np.interp(t,t1,v)) tt=plt.gca().get_yticklabels() for ik in range(len(tt)) : Loading Loading
src/yapsut/graphics.py +22 −9 Original line number Diff line number Diff line import matplotlib.pyplot as plt import numpy as np class ImshowXT : """ class to handle an improved version of plt.imshow """ def __init__(self,matr,x_values,y_values,**kwargs) : Loading @@ -13,17 +10,25 @@ class ImshowXT : self._im=plt.imshow(matr,**kwargs) self._xv=x_values self._yv=y_values def set_xaxis(self,major_values,major_format) : """ format the x axis for a give list of tick values and a formatting string """ def set_xaxis(self,major_values,major_format,major_at_nearestPixel=False) : """ format the x axis for a give list of major tick values and a formatting string major_at_nearestPixel = True places each major_value at the nearest pixel (default False) """ from matplotlib import pyplot as plt import numpy as np from scipy.interpolate import interp1d self._mxv=major_values self._mxf=major_format # v=self._xv t=np.array([np.argmin(np.abs(k-v)) for k in major_values]) t1=np.arange(len(v)) # if major_at_nearestPixel : t=np.array([np.argmin(np.abs(k-v)) for k in major_values]) else : itp=interp1d(v,t1,fill_value='extrapolate') t=itp(major_values) # plt.xticks(t,np.interp(t,t1,v)) tt=plt.gca().get_xticklabels() for ik in range(len(tt)) : Loading @@ -31,17 +36,25 @@ class ImshowXT : o1=major_format%o tt[ik].set_text(o1) plt.gca().set_xticklabels(tt) def set_yaxis(self,major_values,major_format) : """ format the y axis for a give list of tick values and a formatting string """ def set_yaxis(self,major_values,major_format,major_at_nearestPixel=False) : """ format the y axis for a give list of major tick values and a formatting string major_at_nearestPixel = True places each major_value at the nearest pixel (default False) """ from matplotlib import pyplot as plt import numpy as np from scipy.interpolate import interp1d self._myv=major_values self._myf=major_format # v=self._yv t=np.array([np.argmin(np.abs(k-v)) for k in major_values]) t1=np.arange(len(v)) # if major_at_nearestPixel : t=np.array([np.argmin(np.abs(k-v)) for k in major_values]) else : itp=interp1d(v,t1,fill_value='extrapolate') t=itp(major_values) # plt.yticks(t,np.interp(t,t1,v)) tt=plt.gca().get_yticklabels() for ik in range(len(tt)) : Loading