Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

การสลับสีและ Line Style สลับกันใน Matplotlib

ขั้นตอนการทำงาน

  • กำหนดขนาดรูปภาพและปรับระยะห่างรอบๆ subplots

  • ตั้งค่า rcParams ปัจจุบันด้วย cycler รวมทั้งสีและ Line Style

  • พล็อตข้อมูลหลายชุดด้วย plot()

  • แสดงรูปภาพด้วยเมธอด show()

ตัวอย่างโค้ด

import matplotlib.pyplot as plt
from cycler import cycler

plt.rcParams["figure.figsize"] = [7.00, 3.50]
plt.rcParams["figure.autolayout"] = True

# ตั้งค่า Cycle: 4 สี × 4 Line Style = 16 รูปแบบก่อนซ้ำ
plt.rc('axes', prop_cycle=(
    cycler('color', ['r', 'g', 'b', 'y']) +
    cycler('linestyle', [':', '-.', '-', '--'])
))

plt.plot([0, 5, 2, 1])
plt.plot([2, 6, 3, 1])
plt.plot([3, 8, 5, 1])
plt.plot([4, 9, 0, 3])
plt.show()

ผลลัพธ์

กราฟ 4 เส้น แต่ละเส้นมีสีและ Line Style ต่างกัน: แดงจุด, เขียวจุดขีด, น้ำเงินทึบ, เหลืองขีด

ข้อดี: ไม่ต้องกำหนดสไตล์แต่ละ plot แยกกัน ระบบจะสลับอัตโนมัติ ใช้ cycler รวม (+) เพื่อสร้าง Cartesian product ของ property ทั้งสอง