시작하기무료로 시작하기

여행 분석

해지 펀드가 항공 산업에 주목하며, 항공주 성과를 파악하고자 합니다.

날짜에 따른 주가를 선형 차트로 그리고, Delta Air Lines, Southwest Airlines, Boeing 중에서 전환해 볼 수 있도록 하세요. 도형과 글리프는 미리 로드되어 있어요:

boeing = stocks.loc[stocks["name"] == "BA"]
delta = stocks.loc[stocks["name"] == "DAL"]
southwest = stocks.loc[stocks["name"] == "LUV"]
fig = figure(x_axis_label="Date", y_axis_label="Stock Price", 
             x_axis_type="datetime")
boeing_line = fig.line(x=boeing["date"], y=boeing["close"],
                       alpha=0.5)
delta_line = fig.line(x=delta["date"], y=delta["close"], 
                      color="red", alpha=0.5)
sw_line = fig.line(x=southwest["date"], y=southwest["close"], 
                   color="green", alpha=0.5)

이 연습은 강의의 일부입니다

Bokeh로 배우는 인터랙티브 데이터 시각화

강의 보기

연습 안내

  • CustomJS와 함께 Select 위젯을 임포트하세요.
  • Select 위젯을 생성하고, options"Boeing", "Delta", "Southwest"(이 순서)로 구성된 리스트, value"Boeing", title"Airline"으로 지정하세요.
  • "value"가 변경될 때 callback 함수를 실행하도록 위젯을 설정하세요.

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

# Import modules
____

# Create Select widget
menu = ____(____=["____", "____", "____"], ____="____", ____="____") 

callback = CustomJS(args=dict(line_1=boeing_line, line_2=delta_line,
                             line_3=sw_line), code="""
line_1.visible = true
line_2.visible = true
line_3.visible = true
if (this.value == "Boeing") {line_2.visible = false
							 line_3.visible = false} 
    else {line_1.visible = false}
if (this.value == "Delta") {line_1.visible = false
							line_3.visible = false} 
    else {line_2.visible = false}
if (this.value == "Southwest") {line_1.visible = false
								line_2.visible = false} 
    else {line_3.visible = false}
""")

# Set up interaction
menu.____("____", ____)
output_file(filename="airline_stocks.html")
show(column(menu, fig))
코드 편집 및 실행