Saya mencari secara online dan tidak dapat menemukan apa pun tentang ini yang melakukan apa yang saya inginkan.
Saya ingin menyimpan array numpy sebagai gambar tetapi alih-alih memiliki gambar berwarna, saya ingin representasi hitam dan putih dari nilai-nilai piksel di lokasi grid yang sesuai.
Sebagai contoh:
import numpy as np
x = np.array([[1,2],[3,4]])
print(x)
# [[1 2]
# [3 4]]
Saya ingin menyimpan ini sebagai gambar (.PNG) yang terlihat seperti berikut:
Kode saya saat ini membuat kisi-kisi dan menempatkan angka-angka di dalamnya, tetapi sangat sulit untuk menyesuaikan semuanya agar dapat ditampilkan dalam makalah penelitian.
Jadi daripada memposting kode saya yang terlalu rumit, saya bertanya-tanya apakah ada fungsi bawaan untuk menangani ini dalam beberapa baris kode.
table
akan menjadi tempat yang baik untuk memulai. Saya belum cukup menggunakannya untuk memberikan jawaban yang baik.table
.Jawaban:
Saya akan menggunakan LaTeX untuk menghasilkan tabel, karena mereka terlihat mewah dan Anda dapat menghasilkan gambar atau langsung memasukkannya ke dalam dokumen Anda. Saya menggunakan kode berikut untuk mencapai ini:
Di sini, kelas dokumen
preview
digunakan yang mengembalikan gambar yang diubah ukurannya ke konten dokumen, yaitu hanya tabel. Hanyatabular
lingkungan yang digunakan untuk menyajikan data. Ada bar horisontal dan vertikal di antara sel, tetapi sangat mudah untuk mengubahnya. Dalam variabeltab
data diproses untuk setiap baris dan dikonversi menjadi string. Perhatikan bahwa Anda harus menentukan format output pada posisi ini. Saya mengaturnya%d
agar semuanya dikonversi menjadi bilangan bulat.Jika Anda ingin menggunakan tabel secara langsung dalam sumber lateks, Anda harus menghapus
documentclass
dan\begin{document}
juga\end{document}
dalam variabel daristart
danend
. Akhirnya, semuanya disatukan dalam sumber lateks yang kemudian disimpan ke disk sebagaitable.tex
. Jika Anda hanya ingin gambar pada akhirnya, file yang dihasilkan dikompilasi ketable.pdf
.Berikut ini hasilnya. Tapi seperti yang saya katakan, sangat mudah untuk mengubah tampilannya karena itu adalah LaTeX :)
Berikut adalah contoh lain dengan matriks besar (14 x 14), diisi dengan angka acak mulai dari 0 hingga 100:
sumber
Anda dapat menggunakan
table
fungsimatplot
untuk memplot tabel sederhana. Selanjutnya, Anda dapat menyimpan plot sebagai PNG. Di bawah ini adalah kode sederhana untuk kebutuhan Anda:Ukuran plot atau gambar dapat disesuaikan dengan mengubah
figsize
parameter di baris:plt.figure(figsize=(x,y))
Untuk penampilan yang lebih baik, dapat dimodifikasi seperti di bawah ini:
sumber
fig = plt.figure(figsize = x.shape)
Mungkin ini akan membantu:
sumber