2017-12-23 3 views
0

최신 버전의 matplotlib을 사용 중이며 선 두께를 설정하는 인수가 제거되었습니다. 그것들은 Collections 객체로 설정하기 위해 그것을 변경 한 것 같지만, 이것을하는 방법을 찾을 수 없습니다.matplotlib 2.x에서 3 차원 플롯 선폭 설정

from mpl_toolkits.mplot3d import Axes3D 
import matplotlib.pyplot as plt 
from matplotlib import cm 
from matplotlib.ticker import LinearLocator, FormatStrFormatter 
import numpy as np 


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

# Make data. 
X = np.arange(-5, 5, 0.25) 
Y = np.arange(-5, 5, 0.25) 
X, Y = np.meshgrid(X, Y) 
R = np.sqrt(X**2 + Y**2) 
Z = np.sin(R) 

# Plot the surface. 
surf = ax.plot_surface(X, Y, Z, cmap=cm.coolwarm, 
         linewidth=10, antialiased=False) 

# Customize the z axis. 
ax.set_zlim(-1.01, 1.01) 
ax.zaxis.set_major_locator(LinearLocator(10)) 
ax.zaxis.set_major_formatter(FormatStrFormatter('%.02f')) 

# Add a color bar which maps values to colors. 
fig.colorbar(surf, shrink=0.5, aspect=5) 

plt.show() 

enter image description here

을하지만 그림에서 볼 수 있듯이, 내 표면에 라인을 추가하지 않습니다 :

나는 다른 선폭 자신의 example을 시도했다.

선폭을 설정하는 새로운 방법은 무엇입니까?

감사합니다.

답변

1

실제로 선이 표시 될 경우에만 선폭을 적용 할 수 있습니다. 그래서 그들을 볼 수있는 라인의 색상을 지정해야합니다.

surf = ax.plot_surface(X, Y, Z, cmap="RdYlGn", linewidth=2, edgecolor="limegreen") 
관련 문제