2017-07-14 21 views
1

當使用matplotlibscatter模塊,繪製三維離散數據,選項color和並不像預期的那樣,例如, color='r', marker='o'產生由紅色圓圈包圍的藍色圓點,而不是僅填充紅色圓圈。matplotlib的分散模塊並不像預期的那樣有「色」和3D「標記」選項繪製

爲什麼會發生這種情況?

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

N = 100 
x = 0.9 * np.random.rand(N) 
y = 0.9 * np.random.rand(N) 
z = 0.9 * np.random.rand(N) 

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

ax.scatter(x, y, z, color='r', marker='o') 

ax.set_xlabel('x') 
ax.set_ylabel('y') 
ax.set_zlabel('z') 


plt.show() 

enter image description here

回答

2

從問題的代碼產生在matplotlib 2.0.2紅點預期的情節。如果你有一箇舊版本,這可能會有所不同。

除了

ax.scatter(x, y, z, color='r', marker='o') 

您也可以嘗試使用c的說法,這通常意味着定義一個分散的顏色

ax.scatter(x, y, z, c='r', marker='o') 

您也可以使用facecolors參數

ax.scatter(x, y, z, facecolors='r', marker='o') 
相關問題