我试图绕过matplotlib的限制,它不能单独缩放轴。在试图通过在每个轴上放置一个点来实现这一点。奇怪的是,它告诉我,
.../matplotlib/collections.py:1003:RuntimeWarning: invalid value encountered in sqrt
scale = np.sqrt(self._sizes) * dpi / 72.0 * self._factor
这是我的代码
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
from itertools import permutations
fig = plt.figure()
ax = Axes3D(fig)
a = np.array(list(set(permutations((1, 0, 0), 3)) | set(permutations((-1, 0, 0), 3))))
plt.scatter(a[:, 0], a[:, 1], a[:, 2])
1条答案
按热度按时间n3ipq98p1#
我遇到了类似的问题,发现调用
ax.scatter(...)
可以工作(而plt.scatter(...)
对我来说也不行)。我还必须更改您给出的代码示例中的axis对象的创建。下面是为我工作的代码:注意,axis对象是用
ax = fig.add_subplot(projection='3d')
创建的。希望对你有帮助!