2016-04-03 4 views
0

Hey Ich kann keine Lösung finden, um mein Problem zu lösen. Die ersten Tick-Labels überlappen sich immer wieder. Ich habe einige Methoden gefunden, um das Tick-Label zu puffern, aber sie haben nicht für einen 3D-Plot funktioniert. Gibt es eine Möglichkeit, dies zu lösen? enter image description herePython plot ticklabel überlappend

+0

Sie können versuchen, die Zahlengröße um 'fig = plt.figure (figsize = (xx, xx))' zu erhöhen. Vielleicht könnte das helfen. –

Antwort

1

Sie können die Hilfsstrichsbeschriftungen direkt positionieren und angeben. Wenn Sie zu wenig Größe haben, sollten Sie die Ticks selbst einstellen (Ausrichtung, Position, Namen, Schriftgröße usw.). Das folgende Beispiel tut dies für die Achsenteilstrichbeschriftungen Y:

from mpl_toolkits.mplot3d import Axes3D 
import matplotlib.pyplot as plt 
import numpy as np 

fig = plt.figure(figsize=(10,10)) 
ax = fig.gca(projection='3d') 

x,y,z = np.random.randint(0,100,30),np.random.randint(0,100,30),np.random.randint(0,100,30) 
ax.scatter(x,y,z) 

ax.set_xlabel('X') 
ax.set_xlim3d(0, 100) 
ax.set_ylabel('Y') 
ax.set_ylim3d(0, 100) 
ax.set_yticks([30,60,90]) 
ax.set_yticklabels(['number 30','number 60','number 90'], va='center', ha='left',fontsize=24) 
ax.set_zlabel('Z') 
ax.set_zlim3d(0, 100) 

plt.show() 

ergibt dies:

Setting up tick labels in Axes3D

Offensichtlich werden Sie brauchen, um zu sehen, was für die Figur Größe arbeitet Sie wollen und die Werte, die in Ihrem Diagramm angezeigt werden sollen.