Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/348.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python matplotlib不可见点_Python_Matplotlib - Fatal编程技术网

python matplotlib不可见点

python matplotlib不可见点,python,matplotlib,Python,Matplotlib,我正在学习matplolib。我尝试在曲面上显示特定点,得到以下结果: 两个截图来自同一个图形。在第一个屏幕上,我们几乎看不到我想要显示的点,在第二个屏幕上就看不到了。我想让它出现在每一页上。这是我的密码: import numpy as np from matplotlib import cm from mpl_toolkits.mplot3d import Axes3D import matplotlib.pyplot as plt hours, pauses, results = [

我正在学习matplolib。我尝试在曲面上显示特定点,得到以下结果:

两个截图来自同一个图形。在第一个屏幕上,我们几乎看不到我想要显示的点,在第二个屏幕上就看不到了。我想让它出现在每一页上。这是我的密码:

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

hours, pauses, results = [], [], []

with open('./data.txt', 'r') as f:
    for line in f:
        value = line.split()
        for i, l in enumerate([hours, pauses, results]):
            l.append(int(value[i]))

for l in [hours, pauses, results]:
    l = np.asarray(l, dtype=float)

fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')

m = len(hours)

WP_init = 5 * np.random.rand()
WH_init = 5 * np.random.rand()
Z_init = 0
for i in range(m):
    Z_init += 1. / (2 * m) * (WH_init * hours[i] + WP_init * pauses[i] - results[i])**2
ax.scatter(WH_init, WP_init, Z_init, s=40, c='r', marker='o')


WH = np.arange(-5, 5, 0.25)
WP = np.arange(-5, 5, 0.25)
WH, WP = np.meshgrid(WH, WP)
Z = np.zeros(np.shape(WP))
for i in range(m):
    Z += 1. / (2 * m) * (WH * hours[i] + WP * pauses[i] - results[i])**2

ax.plot_surface(WH, WP, Z, rstride=4, cstride=4, cmap=cm.coolwarm)

plt.show()
你知道我怎样才能修好这些吗

谢谢

编辑:这里是data.txt的内容:
12013
12 8 18
10 0 14
10 4 16
8014
8215
8
6013
6311
408
4
2

0 0 0

您可以将曲面的alpha设置为小于1的值,以便其不透明性不会完全遮住红点:

ax.plot_surface(WH, WP, Z, rstride=4, cstride=4, cmap=cm.coolwarm, alpha=0.5)

您可以将曲面的alpha设置为小于1的值,以便其不透明性不会完全遮住红点:

ax.plot_surface(WH, WP, Z, rstride=4, cstride=4, cmap=cm.coolwarm, alpha=0.5)