เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

เปลี่ยน line plot ด้วย Select

สำหรับงานสุดท้าย กองทุน hedge fund ต้องการให้สร้างการแสดงผลสำหรับวิเคราะห์ประสิทธิภาพหุ้นของ Electronic Arts

คุณเลือกใช้ widget Select ซึ่งเหมาะสมที่สุด เพื่อให้สามารถสลับดูระหว่างตัวชี้วัดต่อไปนี้: close, market_cap, และ volume

ชุดข้อมูล stocks ได้ถูกกรองเฉพาะข้อมูลของ EA แล้ว และมีการสร้าง figure สามรายการ (close, market_cap, และ volume) พร้อมชุด glyph (close_line, market_cap_line, volume) สำหรับแต่ละตัวชี้วัดไว้ให้แล้ว

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

การสร้างภาพข้อมูลแบบอินเทอร์แอกทีฟด้วย Bokeh

ดูคอร์ส

คำแนะนำการฝึกหัด

  • สร้าง menu โดยเรียก Select() พร้อมส่ง list ไปยัง argument options ซึ่งประกอบด้วย "Close", "Market Cap", และ "Volume" (ตามลำดับนี้) กำหนด value เป็น "Close" และตั้ง title เป็น "Metric"
  • เรียกเมธอดที่เหมาะสมของ menu เพื่อเชื่อมโยง "value" ของ widget เข้ากับ callback
  • เรียก layout ภายใน show โดยแสดง widget ไว้เหนือ figure close, market_cap, และ volume

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

# Create menu
menu = ____
callback = CustomJS(args=dict(plot_one=close, plot_two=market_cap, plot_three=volume, line_1=close_line, line_2=market_cap_line, line_3=volume_line), code="""
plot_one.visible = true
plot_two.visible = true
plot_three.visible = true
line_1.visible = true
line_2.visible = true
line_3.visible = true
if (this.value == "Close") {plot_two.visible = false
                            plot_three.visible = false
                            line_2.visible = false
                            line_3.visible = false}
    else {plot_one.visible = false
          line_1.visible = false} 
if (this.value == "Market Cap") {plot_one.visible = false
                                 plot_three.visible = false
                                 line_1.visible = false
                                 line_3.visible = false} 
    else {plot_two.visible = false
          line_2.visible = false}
if (this.value == "Volume") {plot_one.visible = false
                             plot_two.visible = false
                             line_1.visible = false
                             line_2.visible = false}
    else {plot_three.visible = false
          line_3.visible = false}
""")

# Set up the interaction
____

# Display the layout
output_file(filename="stock_metrics.html")
____
แก้ไขและรันโค้ด