Note that there are some explanatory texts on larger screens.

plurals
  1. POPlotting scientific format on the axis label and different size minor formatter text size
    primarykey
    data
    text
    <p>I wrote the code below to output the figure but still need to figure out two things.</p> <p>1) How do I get scientific notation on the axis for the minor tick label. Since I only have it show the 5000 I assume I could just change this in the showOnlySomeTicks function to return a string in scientific format. Is there a better way to do this?? Also a better way to show only the 5000 minor tick mark (eg 5e5). 2) I want to make the minor tick mark label size smaller than the major tick mark label size. How do I go about this?</p> <p>Cheers for any help</p> <pre><code>import matplotlib.pyplot as plt import matplotlib.ticker as tick from numpy import load, sqrt, shape, size def clear_spines(ax): ax.spines['top'].set_color('none') ax.spines['right'].set_color('none') def set_spineLineWidth(ax, lineWidth): for i in ax.spines.keys(): ax.spines[i].set_linewidth(lineWidth) def showOnlySomeTicks(x, pos): s = str(int(x)) if x == 5000: return s return '' plt.close('all') spineLineWidth = 0.5 inFile = '7semiat220' outFile = inFile inExt = '.npz' outExt = ['.eps','.pdf','.tif','.png'] mydpi = 300 storeMat = load(inFile+inExt) fig_width_pt = 246.0 inches_per_pt = 1.0/72.27 golden_mean = (sqrt(5)-1.0)/2.0 fig_width = fig_width_pt*inches_per_pt fig_height = 2 #fig_width*golden_mean fig_size = [fig_width,fig_height] tick_size = 9 fontlabel_size = 10.5 params = {'backend': 'wxAgg', 'axes.labelsize': fontlabel_size, 'text.fontsize': fontlabel_size, 'legend.fontsize': fontlabel_size, 'xtick.labelsize': tick_size, 'ytick.labelsize': tick_size, 'text.usetex': True, 'figure.figsize': fig_size} plt.rcParams.update(params) x = storeMat['freq'] y = storeMat['mag'] sizeX = x.size fig = plt.figure(1) #figure(num=None, figsize=(8, 6), dpi=80, facecolor='w', edgecolor='k') #fig.set_size_inches(fig_size) plt.clf() ax = plt.axes([0.125,0.2,0.95-0.125,0.95-0.2]) plt.plot(x,y,'k',label='$\sin(x)$') plt.xscale('log') plt.xlim(x[sizeX-1]*.95,x[0]*1.05) plt.xlabel('Log Frequency (Hz)') plt.ylabel('Magnitude') set_spineLineWidth(ax,spineLineWidth) clear_spines(ax) ax.yaxis.set_ticks_position('left') ax.xaxis.set_ticks_position('bottom') ax.xaxis.set_minor_formatter(tick.FuncFormatter(showOnlySomeTicks)) #plt.legend() for i in outExt: plt.savefig(outFile+i, dpi = mydpi) #def grayConvert() #Image.open('color.png').convert('L').save('bw.png') #direct method #image=Image.open('colored_image.png').convert("L") #other manipulations can use this method #arr=np.asarray(image) #p.figimage(arr,cmap=cm.Greys_r) #p.savefig('grayed.png') </code></pre> <p><img src="https://i.stack.imgur.com/qX9wU.png" alt="output"></p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload