Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Program Python untuk melukis histogram menggunakan penyu

Program Python untuk melukis histogram menggunakan penyu

王林
王林ke hadapan
2023-08-20 16:57:18667semak imbas

Perwakilan grafik data memberikan pemahaman yang dipertingkatkan tentang substruktur kompleks data, membantu kami mentafsir corak dan aliran tersembunyi dengan mudah. Bayangkan betapa mudahnya jika kita boleh melukis hubungan yang serupa secara pemrograman? Python menyediakan modul kaya yang direka khusus untuk melaksanakan operasi sedemikian, ia dipanggil "turtle".

Modul "turtle" ialah perpustakaan terbina dalam Python yang membolehkan kami melukis grafik pada "skrin grafik penyu". Dalam artikel ini, kami akan membuat carta bar menggunakan modul penyu.

Memahami modul Turtle

Modul penyu menggunakan objek penyu maya untuk mencipta grafik Terdapat fungsi berbeza yang dikaitkan dengan modul ini yang memperkasakan objek penyu ini untuk bergerak di sekeliling skrin dan melukis di atasnya.

Fungsi penyu untuk mencipta carta palang

  • Penyu() Fungsi ini mencipta objek penyu baharu.

  • fillcolor() Fungsi ini menetapkan warna penyu kepada warna bar isian.

  • begin_fill() Fungsi ini memulakan proses pengisian dan mengingati titik permulaan.

  • kiri() Fungsi ini membuatkan penyu berpusing 90 darjah ke kiri.

  • kanan() Fungsi ini membuatkan penyu berpusing 90 darjah ke kanan.

  • forward() Fungsi ini menggerakkan penyu ke hadapan mengikut unit yang ditentukan.

  • write() Fungsi ini akan menulis rentetan (nilai ketinggian) pada histogram.

  • end_fill() Fungsi ini menutup grafik dan menghentikan proses pengisian.

Semua fungsi ini bersama-sama mencipta carta bar, tetapi kita perlu menyediakan atur cara yang betul untuk menjadikan fungsi ini berfungsi secara keseluruhan. Sekarang setelah kita memahami mekanik, mari kita lukis carta palang.

Lukis Carta Bar

Modul Turtle diilhamkan oleh bahasa pengaturcaraan LOGO dan membolehkan pengguna mencipta bentuk pada skrin maya. Untuk melukis carta bar, kita perlu menetapkan penyu ke sudut kiri bawah skrin. Secara lalai, penyu terletak di titik tengah (0,0), tetapi kita boleh menukar koordinat ini menggunakan kaedah "setworldcoordinates()".

Kaedah ini membolehkan pengguna menskala semula tetingkap dan menjadikannya sesuai untuk data Ia memerlukan empat koordinat −

    Koordinat
  • ialah paksi X dan Y bagi penjuru kiri bawah dan sudut kanan bawah.

  • Koordinat paksi X dan Y penjuru kiri atas dan kanan atas.

Kaedah ini bertindak sebagai alat set semula untuk melaraskan koordinat mengikut saiz data. Kami menetapkan koordinat ini menggunakan nilai ketinggian histogram maksimum dan jumlah nilai ruang.

Terjemahan bahasa Cina bagi

Contoh

ialah:

Contoh

Berikut adalah pelaksanaan konsep yang dibincangkan di atas.

  • Kami akan mencipta fungsi yang menerima "objek penyu", "tinggi bar" dan "warna bar" sebagai parameter. Kami kemudian akan menulis fungsi untuk memplot bar dengan ketinggian dan warna yang berbeza.

  • Nilai ketinggian dan warna yang berbeza akan dihantar dalam bentuk senarai dan kami akan memanggil fungsi untuk setiap nilai dengan iterating.

  • Akhir sekali, kita akan menggunakan objek penyu untuk membuat berus dan memulakan proses melukis. Setelah lukisan selesai, kami akan menutup contoh penyu. Skrin grafik penyu dicipta melalui kaedah "Skrin()".

Terjemahan bahasa Cina bagi

Contoh

ialah:

Contoh

import turtle

def BarGraph(turtleOBJ, Bar_height, Bar_color):
   turtleOBJ.fillcolor(Bar_color)
   turtleOBJ.begin_fill()
   turtleOBJ.left(90)
   turtleOBJ.forward(Bar_height)
   turtleOBJ.write(str(Bar_height))
   turtleOBJ.right(90)
   turtleOBJ.forward(80)
   turtleOBJ.right(90)
   turtleOBJ.forward(Bar_height)
   turtleOBJ.left(90)

   turtleOBJ.end_fill()

Bar_heights = [23, 94, 42, 150, 200, 56, 240,40]
Bar_color = ["orange", "purple", "green", "red", "black", "grey", "white", "violet"]

maxBarVal = max(Bar_heights)
Graph_Range = len(Bar_heights)
Space = 20

screen = turtle.Screen()
screen.setworldcoordinates(0 - Space, 0 - Space, 50 * Space, maxBarVal + Space)
screen.bgcolor("Brown")

turtleOBJ = turtle.Turtle()
turtleOBJ.pensize(3)

for bar in range(len(Bar_heights)):
   BarGraph(turtleOBJ, Bar_heights[bar], Bar_color[bar])
screen.exitonclick()

Output

Program Python untuk melukis histogram menggunakan penyu

Pemahaman lain

Kita boleh menambah bingkai pada carta bar ini dan mereka bentuk skala paksi-X dan paksi-Y. Modul penyu adalah semata-mata untuk membuat graf berdasarkan data yang kami ada. Kami tidak boleh menggunakannya untuk membuat anggaran statistik. Walaupun ia boleh digunakan dengan perpustakaan Python lain yang berkuasa seperti "NumPy" dan "Pandas", memberikan mereka keupayaan statistik dan visualisasi. Untuk anggaran yang lebih mendalam dan tepat, kami menggunakan perpustakaan "matplotlib".

Kesimpulan

Artikel ini menerangkan mekanik modul penyu dan cara menggunakannya untuk mencipta Histogram. Kami membincangkan pelbagai fungsi dan parameter yang boleh digunakan untuk menjana histogram secara pemrograman pada skrin grafik penyu. Nilai yang digunakan dalam program ini adalah berdasarkan data yang ingin kami gambarkan dan tidak boleh ditafsirkan secara statistik lagi.

Atas ialah kandungan terperinci Program Python untuk melukis histogram menggunakan penyu. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam