Matplotlib.pyplot - deactivate the axis in the figure. / The axis of the figure is overlapped by the axes of the subtitle

%load_ext autoreload %autoreload 2 %matplotlib inline import numpy as np import datetime as dt import pickle import pandas as pd import datetime from datetime import timedelta, date from datetime import date as dt import math import os import matplotlib.pyplot as plt plt.style.use('ggplot') from pylab import plot,show from matplotlib import ticker from matplotlib.backends.backend_pdf import PdfPages import matplotlib.dates as mdates import pylab as pl x_min_global=datetime.date(2010,1, 1)- timedelta(days=180) x_max_global=datetime.date(2015,1, 1)+ timedelta(days=180) d = pd.DataFrame(0, index=np.arange(155),columns=['Zeros']) d = pd.DataFrame(0, index=np.arange(2),columns=['Zeros']) wd=os.getcwd() def format_date(x, pos=None): return pl.num2date(x).strftime('%Y-%m-%d') with PdfPages(wd+'/Plots.pdf') as pdf: #Plot 1: All fig = plt.figure(facecolor='white',frameon=True,figsize=(30, 30)) plt.title('Page One ', y=1.08) axes1 = fig.add_subplot(3,1,1,frameon=False) axes1.set_xlim(x_min_global,x_max_global) axes1.xaxis.set_major_formatter(ticker.FuncFormatter(format_date)) #Plot line a at 0-level axes1.plot([x_min_global,x_max_global],d.loc[0:1],color='k', linewidth=2.0, markersize=10.0) # labels and legend axes1.set_title('Plot 1') plt.xlabel('Time', fontsize=10) plt.ylabel('Y-Values', fontsize=10) axes1.legend(loc='upper left') #----------------------------------------------------------------------- #Plot 2: axes1 = fig.add_subplot(3,1,2,frameon=False) axes1.xaxis.set_major_formatter(ticker.FuncFormatter(format_date)) #Plot line a at 0-level axes1.plot([x_min_global,x_max_global],d.loc[0:1],color='k', linewidth=2.0, markersize=10.0) # labels and legend axes1.set_title('Plot 2') plt.xlabel('Time', fontsize=10) plt.ylabel('Y-Values', fontsize=10) axes1.legend(loc='upper left') #----------------------------------------------------------------------- #Plot 3: axes2 = fig.add_subplot(3,1,3,frameon=False) axes2.xaxis.set_major_formatter(ticker.FuncFormatter(format_date)) #Plot line a at 0-level axes2.plot([x_min_global,x_max_global],d.loc[0:1],color='k', linewidth=2.0, markersize=10.0) # labels and legend axes2.set_title('Plot 3') plt.xlabel('Time', fontsize=10) plt.ylabel('Y-Values', fontsize=10) axes2.legend(loc='upper left') pdf.savefig(frameon=False,transparent=False,papertype='a4') # saves the current figure into a pdf page plt.show() plt.close() 

My problem is that in the graph generated by the code above the axis of the figure, the subwords seem to overlap (see the red rectangles in the picture). I tried to disable the axes in the figure. However, I could not figure it out.

Any help is appreciated. Thanks.

Code / Task Output:

-one
source share
1 answer

If you want to completely remove the axes, you should try:

 plt.axis('off') 

If this does not work (or does not do what you want), try:

 cur_axes = plt.gca() cur_axes.axes.get_xaxis().set_visible(False) cur_axes.axes.get_yaxis().set_visible(False) 
0
source

All Articles