python的web可视化_Python的Web可视化框架Dash(8)---核心组件

本文详细介绍了Python的Web可视化库Dash的核心组件,包括下拉列表、滑块、范围滑块、输入框、选项卡以及其他常用组件的使用方法和属性设置,如多值、禁用搜索、滑块标记等,帮助读者深入理解Dash开发。
摘要由CSDN通过智能技术生成

本节介绍Dash应用的常用核心组件,导入本节用到的所有包

import pandas as pd

import plotly.graph_objs as go

import dash

import dash_core_components as dcc # 交互式组件

import dash_html_components as html # 代码转html

from dash.dependencies import Input, Output # 回调

from jupyter_plotly_dash import JupyterDash # Jupyter中的Dash

一、下拉列表

(一) 默认下拉列表

没有任何额外属性的默认下拉列表的示例

代码

app = JupyterDash('dropdown01', height = 120)

app.layout = html.Div([

dcc.Dropdown(

id = 'my_dropdown',

options = [{'label': '北京', 'value': '北京'},

{'label': '上海', 'value': '上海'},

{'label': '深圳', 'value': '深圳'}],

value = '北京'),

html.Div(id = 'output-01')

])

@app.callback(Output('output-01', 'children'), [Input('my_dropdown', 'value')])

def update_output(value):

return f"您已经选择:【{value}】"

app

效果图

(二) 多值下拉列表

multi 属性设置为True时,允许用户一次选择多个值

代码

app = JupyterDash('dropdown01', height = 120)

app.layout = html.Div([

dcc.Dropdown(

id = 'my_dropdown',

options = [{'label': '北京', 'value': '北京'},

{'label': '上海', 'value': '上海'},

{'label': '深圳', 'value': '深圳'}],

value = ['北京', '上海'],

multi = True),

html.Div(id = 'output-01')

])

@app.callback(Output('output-01', 'children'), [Input('my_dropdown', 'value')])

def update_output(value):

return f"您已经选择:【{'、'.join([val for val in value])}】"

app

效果图

(三) 禁用搜索

searchable 属性,设置是否允许在下拉列表中搜索,默认为True,若要禁止搜索则需要设置为False。

代码

app = JupyterDash('dropdown01', height = 120)

app.layout = html.Div([

dcc.Dropdown(

id = 'my_dropdown',

options = [{'label': '北京', 'value': '北京'},

{'label': '上海', 'value': '上海'},

{'label': '深圳', 'value': '深圳'}],

searchable=False),

html.Div(id = 'output-01')

])

@app.callback(Output('output-01', 'children'), [Input('my_dropdown', 'value')])

def update_output(value):

pass

app

效果图

(四) 下拉清除

clearable 属性,设置是否可以清空下拉按钮的选值,默认为True,若要禁止清空则需要设置为False。

代码

app = JupyterDash('dropdown01', height = 120)

app.layout = html.Div([

dcc.Dropdown(

id = 'my_dropdown',

options = [{'label': '北京', 'value': '北京'},

{'label': '上海', 'value': '上海'},

{'label': '深圳', 'value': '深圳'}],

value = '北京',

clearable = False),

html.Div(id = 'output-01')

])

@app.callback(Output('output-01', 'children'), [Input('my_dropdown', 'value')])

def update_output(value):

return f"您已经选择:【{value}】"

app

效果图

(五) 占位符文本

placeholder 属性,设置未选择任何值时,显示的默认文本。

代码

app = JupyterDash('dropdown01', height = 120)

app.layout = html.Div([

dcc.Dropdown(

id = 'my_dropdown',

options = [{'label': '北京', 'value': '北京'},

{'label': '上海', 'value': '上海'},

{'label': '深圳', 'value': '深圳'}],

placeholder = '选择一个城市名称'),

html.Div(id = 'output-01')

])

@app.callback(Output('output-01', 'children'), [Input('my_dropdown', 'value')])

def update_output(value):

pass

app

效果图

(六) 禁用下拉列表

通过设置 disabled=True 可以禁止选取下拉列表。

代码

app = JupyterDash('dropdown01', height = 120)

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值