Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/366.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_Machine Learning_Scikit Learn_Miniconda - Fatal编程技术网

Python 使用matplotlib正确显示图形

Python 使用matplotlib正确显示图形,python,matplotlib,machine-learning,scikit-learn,miniconda,Python,Matplotlib,Machine Learning,Scikit Learn,Miniconda,我需要一点帮助,用我正在使用的jupyter笔记本。我正在使用适用于windows 64的miniconda 我有以下代码: import numpy as np import matplotlib.pyplot as plt from sklearn.linear_model import LinearRegression from sklearn.preprocessing import PolynomialFeatures # Función original x = np.linspa

我需要一点帮助,用我正在使用的jupyter笔记本。我正在使用适用于windows 64的miniconda

我有以下代码:

import numpy as np
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression
from sklearn.preprocessing import PolynomialFeatures

# Función original
x = np.linspace(0, 2*np.pi, 100)
y = np.sin(x)
x = x[:, np.newaxis]

# Datos de la función
np.random.seed(2)  # Semilla para replicar los resultados
x_train = np.linspace(0, 2*np.pi, 50)
y_train = np.sin(x_train) + np.random.randint(-1, 2, 50) * 0.3
X_train = x_train[:, np.newaxis]

print("x_train shape", x_train.shape)
print("X_train shape", X_train.shape)

def polinom_n(grado, X_tr, y_tr, x_vals):
    pol_reg = LinearRegression()
    features = PolynomialFeatures(grado)
    X_feat = features.fit_transform(X_tr)
    print(X_feat.shape)
    pol_reg.fit(X_feat, y_tr)
    y_pol = pol_reg.predict(features.fit_transform(x_vals))
    return y_pol

lin_r = LinearRegression()
lin_r.fit(X_train, y_train)  # aprende de las muestras
y_lin = lin_r.predict(x)  # ajusta a todos los valores de x

# Modelo polinomial
y_pol3 = polinom_n(3,X_train,y_train, x)
# Probar valores de 2 a 50
n = 20
y_poln = polinom_n(n, X_train, y_train, x)

# Plot de la figura
plt.figure(figsize=(10, 6))
plt.plot(x, y, "r", label="f(x)")  # Grafica la función original
plt.scatter(X_train, y_train, color='black')  # Grafica las muestras
plt.plot(x, y_lin, label="reg lineal")  # Grafica la regresión lineal
plt.plot(x, y_pol3, label="poli reg 3")  # Grafica la regresión polinomial
plt.plot(x, y_poln, label="poli reg %d"%(n))
plt.legend(loc="lower right")
plt.ylim(-2.5, 2.5)
plt.show()
问题是,如果我在GoogleColab或另一台计算机上使用完全相同的conda env运行该代码,我会收到

但是在我自己的装有Windows10的电脑上,我收到了

我擦去了我的康达环境,我又创造了它;我更新了conda env中的所有软件包,但不起作用

这就是我创建虚拟环境的过程:

  • conda create-n actumlogos cpu python=3.6 pip tensorflow keras
  • conda激活actumlogos cpu
  • conda install scipy jupyter matplotlib flask socketio imageio pandas请求scikit image scikit learn
  • pip安装opencv-python-moviepy

  • 再次显示输出:

    My windows 10 with python 3.7,matplotlib 3.0.3提供与第一个相同的输出。我建议不要比较图形,而是比较实际数据。你确定对象是等效的吗?数据是相同的,因为我在python 3.7中使用了相同的seedMy windows 10,matplotlib 3.0.3给出了与第一个相同的输出。我建议不要比较图形,而是比较实际数据。你确定对象是等价的吗?因为我使用了相同的种子,所以数据是相同的