Sering kali, orang ingin membuat grafik data dari sebuah file. Ada banyak jenis file, dan banyak cara Anda dapat mengekstrak data dari file untuk membuat grafiknya. Di sini, kami akan menunjukkan beberapa cara untuk melakukan ini. Pertama, kami akan menggunakan modul csv bawaan untuk memuat file CSV, lalu kami akan menunjukkan cara menggunakan NumPy, yang merupakan modul pihak ketiga, untuk memuat file
import matplotlib.pyplot as plt import csv x = [] y = [] with open('example.txt','r') as csvfile: plots = csv.reader(csvfile, delimiter=',') for row in plots: x.append(int(row[0])) y.append(int(row[1])) plt.plot(x,y, label='Loaded from file!') plt.xlabel('x') plt.ylabel('y') plt.title('Interesting Graph\nCheck it out') plt.legend() plt.show()Di sini, kami membuka file sampel, yang berisi data berikut
1,5 2,3 3,4 4,7 5,4 6,3 7,5 8,7 9,4 10,4_Selanjutnya, kami menggunakan modul csv untuk membaca data. Pembaca csv secara otomatis membagi file per baris, dan kemudian data dalam file dengan pembatas yang kita pilih. Dalam kasus kami, ini adalah koma. Catatan. modul "csv" dan pembaca csv tidak memerlukan file secara harfiah a. file csv. Itu bisa berupa file teks apa saja yang hanya memiliki data terbatas
Setelah kami melakukan ini, kami menyimpan elemen dengan indeks 0 ke daftar x dan elemen dengan indeks 1 ke daftar y. Setelah ini, kita sudah siap dan siap untuk memplot, lalu tampilkan datanya
Meskipun menggunakan modul CSV benar-benar baik, menggunakan modul NumPy untuk memuat file dan data kita kemungkinan akan lebih masuk akal bagi kita di kemudian hari. Jika Anda tidak memiliki NumPy, Anda harus mendapatkannya untuk mengikuti di sana. Untuk mempelajari lebih lanjut tentang menginstal modul, lihat tutorial pip. Kebanyakan orang hanya bisa membuka baris perintah, dan melakukan pip install numpy
Jika tidak, lihat tutorial tertaut
Setelah Anda memiliki NumPy, Anda dapat menulis kode seperti
import matplotlib.pyplot as plt import numpy as np x, y = np.loadtxt('example.txt', delimiter=',', unpack=True) plt.plot(x,y, label='Loaded from file!') plt.xlabel('x') plt.ylabel('y') plt.title('Interesting Graph\nCheck it out') plt.legend() plt.show()Hasilnya harus grafik yang sama. Nanti, kita dapat menggunakan NumPy untuk melakukan lebih banyak pekerjaan untuk kita saat memuat data, tetapi itu adalah konten untuk tutorial mendatang. Sama seperti modul csv yang tidak membutuhkan a. csv khusus, fungsi loadtxt tidak memerlukan file menjadi a. txt file, itu bisa menjadi. csv, dan bahkan bisa menjadi objek daftar python
Untuk memplot data dari. txt menggunakan matplotlib, kita dapat mengambil langkah-langkah berikut −
- Atur ukuran gambar dan sesuaikan padding antara dan di sekitar subplot
- Inisialisasi daftar kosong untuk bar_names dan bar_heights
- Buka sampel. txt dalam mode baca "r" dan tambahkan ke nama bar dan daftar tinggi
- Buat plot batang
- Untuk menampilkan gambar, gunakan metode show()
Contoh
from matplotlib import pyplot as plt plt.rcParams["figure.figsize"] = [7.00, 3.50] plt.rcParams["figure.autolayout"] = True bar_names = [] bar_heights = [] for line in open("test_data.txt", "r"): bar_name, bar_height = line.split() bar_names.append(bar_name) bar_heights.append(bar_height) plt.bar(bar_names, bar_heights) plt.show()"test_data. txt" berisi data berikut −
Javed 12 Raju 14 Rishi 15 Kiran 10 Satish 17 Arun 23_Keluaran
Ini akan menghasilkan output berikut
Pada artikel ini, kita akan melihat cara memuat file data untuk Matplotlib. Matplotlib adalah pustaka Python 2D yang digunakan untuk Visualisasi Tanggal. Kami dapat memplot berbagai jenis grafik menggunakan data yang sama seperti
- Grafik batang
- Grafik garis
- Grafik Sebar
- Grafik Histogram dan banyak lagi
Pada artikel ini, kita akan belajar bagaimana kita dapat memuat data dari file untuk membuat grafik menggunakan modul python “Matplotlib”. Di sini kita juga akan membahas dua cara berbeda untuk mengekstrak data dari file. Di Modul Pertama, kita akan membahas mengekstrak data menggunakan modul CVS inbuild dan Di Modul Kedua, kita akan menggunakan Modul “NumPy” pihak ketiga untuk mengekstrak data dari file.
Persyaratan
Sebuah file teks dari mana data harus diekstrak. Biarkan nama file = GFG. txt
Metode 1. Dalam metode ini, kami akan mengekstrak data menggunakan modul CSV untuk memuat file CVS
Langkah 1
Impor semua modul yang diperlukan
Python3
import matplotlib.pyplot as plt
import csv
Langkah 2. Buat variabel X dan Y untuk menyimpan data sumbu X dan data sumbu Y dari file teks.
Python3
import matplotlib.pyplot as plt
import csv
X= matplotlib.pyplot as plt0
matplotlib.pyplot as plt1= matplotlib.pyplot as plt0
Langkah 3. Buka file teks dalam mode baca. Lewati 'file_name' dan pembatas dalam fungsi pembaca dan simpan data yang dikembalikan dalam variabel baru.
Python3
import matplotlib.pyplot as plt
import csv
X= matplotlib.pyplot as plt0
matplotlib.pyplot as plt1= matplotlib.pyplot as plt0
import4import5import6import7import8import9csv0
csv1csv2= csv4=csv6csv7
Langkah 4. Buat loop, yang akan menambahkan data dalam variabel X dan Y
Python3
import matplotlib.pyplot as plt
import csv
X= matplotlib.pyplot as plt0
matplotlib.pyplot as plt1= matplotlib.pyplot as plt0
import4import5import6import7import8import9csv0
csv1csv2= csv4=csv6csv7
csv_1
csv1import4 import5import6 import7
import8import9csv0csv1csv2csv3
import8csv5csv0csv1csv8csv3
Langkah 5. Sekarang berikan semua parameter dalam fungsinya masing-masing
Python3
import matplotlib.pyplot as plt
import csv
X= matplotlib.pyplot as plt0
matplotlib.pyplot as plt1= matplotlib.pyplot as plt0
import4import5import6import7import8import9csv0
csv1csv2= csv4=csv6csv7
csv_1
csv1import4 import5import6 import7
import8import9csv0csv1csv2csv3
import8csv5csv0csv1csv8csv3
matplotlib.pyplot as plt_22
matplotlib.pyplot as plt23matplotlib.pyplot as plt24csv7
matplotlib.pyplot as plt26matplotlib.pyplot as plt27csv7
matplotlib.pyplot as plt29matplotlib.pyplot as plt30csv7
matplotlib.pyplot as plt_32
Keluaran
Metode 2. Dalam metode ini, kami akan mengekstrak data menggunakan modul numpy untuk memuat file. Di sini Anda akan melihat bahwa Langkah 2,3 dan 4 diganti dengan np. memuattxt( )
Python3
import matplotlib.pyplot as plt
import matplotlib.pyplot as plt36
matplotlib.pyplot as plt37= matplotlib.pyplot as plt39________6______7matplotlib.pyplot as plt41=csv6matplotlib.pyplot as plt44=matplotlib.pyplot as plt46csv7