de-vraag
  • Pertanyaan
  • Tag
  • Pengguna
Notifikasi
Imbalan
Registrasi
Setelah Anda mendaftar, Anda akan diberitahu tentang balasan dan komentar untuk pertanyaan Anda.
Gabung
Jika Anda sudah memiliki akun, masuk untuk memeriksa pemberitahuan baru.
Akan ada hadiah untuk pertanyaan, jawaban, dan komentar tambahan.
Lebih
Sumber
Sunting
Yuhao Li
Yuhao Li
Question

ketika saya menggunakan matplotlib di jupyter notebook, selalu memunculkan " matplotlib saat ini menggunakan backend non-GUI &" error?

import matplotlib.pyplot as pl
%matplot inline
def learning_curves(X_train, y_train, X_test, y_test):
""" Calculates the performance of several models with varying sizes of training data.
    The learning and testing error rates for each model are then plotted. """

print ("Creating learning curve graphs for max_depths of 1, 3, 6, and 10. . .")

# Create the figure window
fig = pl.figure(figsize=(10,8))

# We will vary the training set size so that we have 50 different sizes
sizes = np.rint(np.linspace(1, len(X_train), 50)).astype(int)
train_err = np.zeros(len(sizes))
test_err = np.zeros(len(sizes))

# Create four different models based on max_depth
for k, depth in enumerate([1,3,6,10]):

    for i, s in enumerate(sizes):

        # Setup a decision tree regressor so that it learns a tree with max_depth = depth
        regressor = DecisionTreeRegressor(max_depth = depth)

        # Fit the learner to the training data
        regressor.fit(X_train[:s], y_train[:s])

        # Find the performance on the training set
        train_err[i] = performance_metric(y_train[:s], regressor.predict(X_train[:s]))

        # Find the performance on the testing set
        test_err[i] = performance_metric(y_test, regressor.predict(X_test))

    # Subplot the learning curve graph
    ax = fig.add_subplot(2, 2, k+1)

    ax.plot(sizes, test_err, lw = 2, label = 'Testing Error')
    ax.plot(sizes, train_err, lw = 2, label = 'Training Error')
    ax.legend()
    ax.set_title('max_depth = %s'%(depth))
    ax.set_xlabel('Number of Data Points in Training Set')
    ax.set_ylabel('Total Error')
    ax.set_xlim([0, len(X_train)])

# Visual aesthetics
fig.suptitle('Decision Tree Regressor Learning Performances', fontsize=18, y=1.03)
fig.tight_layout()
fig.show()

ketika saya menjalankan fungsi learning_curves(), itu menunjukkan:

UserWarning:C:\Users\Administrator\Anaconda3\lib\site-packages\matplotlib\figure.py:397: UserWarning: matplotlib saat ini menggunakan backend non-GUI, sehingga tidak dapat menampilkan gambar

ini adalah screenshot

36 2016-05-21T16:19:36+00:00 3
 cel
cel
Pertanyaan edit 21 Mei 2016 в 4:47
Pemrograman
python
matplotlib
jupyter-notebook
Pertanyaan ini memiliki :value jawaban dalam bahasa Inggris, untuk membacanya masuk ke akun Anda.
 Yul
Yul
16 Juni 2016 в 3:16
2016-06-16T03:16:03+00:00
Lebih
Sumber
Sunting
#30728575

Anda tidak memerlukan baris "fig.show()". Hapus saja. Maka tidak akan ada pesan peringatan.

45
0
 airdas
airdas
30 November 2016 в 4:19
2016-11-30T16:19:34+00:00
Lebih
Sumber
Sunting
#30728585

Anda dapat mengubah backend yang digunakan oleh matplotlib dengan menyertakan:

import matplotlib
matplotlib.use('TkAgg')

sebelum baris 1 Anda import matplotlib.pyplot as pl, karena harus diset terlebih dahulu. Lihat jawaban ini untuk informasi lebih lanjut.

(Ada opsi backend lain, tetapi mengubah backend menjadi TkAgg bekerja untuk saya ketika saya memiliki masalah yang sama)

 Community
Community
Jawaban edit 23 Mei 2017 в 12:10
17
0
Clemens Tolboom
Clemens Tolboom
9 Juni 2018 в 8:42
2018-06-09T08:42:16+00:00
Lebih
Sumber
Sunting
#30728589

Pengujian dengan https://matplotlib.org/examples/animation/dynamic_image.html saya hanya menambahkan

%matplotlib notebook

yang tampaknya bekerja tetapi sedikit bergelombang. Saya harus menghentikan kernal sekarang dan kemudian :-(

Clemens Tolboom
Clemens Tolboom
Jawaban edit 9 Juni 2018 в 8:48
8
0
Related communities 6
Python Indonesia
Python Indonesia
24 686 pengguna
Programmer Python Indonesia. Group ini dikelola oleh sejumlah admin. Baca pesan tersemat / pinned message: https://t.me/pythonID/217588
Buka telegram
Indonesian Python Warriors
Indonesian Python Warriors
1 462 pengguna
Di grup ini tidak ada kewajiban untuk menggunakan username dan foto. Yang tidak boleh adalah spamming. Gak boleh baper, kalau nanya yang bener, eror jangan difoto pake HP, gunakan screenshot, code copas ke pastebin.com lalu share link ke sini.
Buka telegram
Python-ID Jogja
Python-ID Jogja
962 pengguna
Buka telegram
BASIC PYTHON INDONESIA
BASIC PYTHON INDONESIA
214 pengguna
Buka telegram
Python Newbie Indonesia
Python Newbie Indonesia
180 pengguna
Peraturan grup Python Newbie 🌻Dilarang spam 🌻Dilarang menggunakan bahasa kasar 🌻Dilarang beriklan di grup tanpa seizin admin Beberapa video dasar python dapat diliat melalui channel youtube juan aditya Jangan lupa untuk subscribe ya🙏
Buka telegram
PythonWealth Indonesia 🇮🇩
PythonWealth Indonesia 🇮🇩
29 pengguna
Buka telegram
Tambahkan pertanyaan
Kategori
Semua
Teknologi
Budaya / Rekreasi
Kehidupan / Seni
Ilmu Pengetahuan
Profesional
Bisnis
Pengguna
Semua
Baru
Populer
1
Asilbek Qadamboyev
Terdaftar 1 hari yang lalu
2
Akshit Mehta
Terdaftar 4 hari yang lalu
3
me you
Terdaftar 1 minggu yang lalu
4
Никита иванов
Terdaftar 1 minggu yang lalu
5
Alex1976G_06
Terdaftar 1 minggu yang lalu
ID
JA
KO
RU
© de-vraag 2022
Sumber
stackoverflow.com
di bawah lisensi cc by-sa 3.0 dengan atribusi