跳到主要内容

Plotly图表 PlotlyChart

显示Plotly图表。

示例

折线图

以下示例基于Plotly文档上的原始示例

import plotly.express as px

import flet as ft
from flet.plotly_chart import PlotlyChart

def main(page: ft.Page):

df = px.data.gapminder().query("continent=='Oceania'")
fig = px.line(df, x="year", y="lifeExp", color="country")

page.add(PlotlyChart(fig, expand=True))

ft.app(target=main)

条形图

以下示例基于Plotly文档上的原始示例

import plotly.express as px

import flet as ft
from flet.plotly_chart import PlotlyChart

def main(page: ft.Page):

df = px.data.gapminder().query("continent == 'Oceania'")
fig = px.bar(
df,
x="year",
y="pop",
hover_data=["lifeExp", "gdpPercap"],
color="country",
labels={"pop": "population of Canada"},
height=400,
)

page.add(PlotlyChart(fig, expand=True))

ft.app(target=main)

饼图

以下示例基于Plotly文档上的原始示例

import plotly.graph_objects as go

import flet as ft
from flet.plotly_chart import PlotlyChart

def main(page: ft.Page):

labels = ["Oxygen", "Hydrogen", "Carbon_Dioxide", "Nitrogen"]
values = [4500, 2500, 1053, 500]

fig = go.Figure(data=[go.Pie(labels=labels, values=values)])

page.add(PlotlyChart(fig, expand=True))

ft.app(target=main)

箱线图

以下示例基于Plotly文档上的原始示例

import plotly.graph_objects as go

import flet as ft
from flet.plotly_chart import PlotlyChart


def main(page: ft.Page):

x = ['day 1', 'day 1', 'day 1', 'day 1', 'day 1', 'day 1',
'day 2', 'day 2', 'day 2', 'day 2', 'day 2', 'day 2']

fig = go.Figure()

fig.add_trace(go.Box(
y=[0.2, 0.2, 0.6, 1.0, 0.5, 0.4, 0.2, 0.7, 0.9, 0.1, 0.5, 0.3],
x=x,
name='kale',
marker_color='#3D9970'
))
fig.add_trace(go.Box(
y=[0.6, 0.7, 0.3, 0.6, 0.0, 0.5, 0.7, 0.9, 0.5, 0.8, 0.7, 0.2],
x=x,
name='radishes',
marker_color='#FF4136'
))
fig.add_trace(go.Box(
y=[0.1, 0.3, 0.1, 0.9, 0.6, 0.6, 0.9, 1.0, 0.3, 0.6, 0.8, 0.5],
x=x,
name='carrots',
marker_color='#FF851B'
))

fig.update_layout(
yaxis_title='normalized moisture',
boxmode='group' # group together boxes of the different traces for each value of x
)

page.add(PlotlyChart(fig, expand=True))

ft.app(target=main)

属性

figure

要绘制的Plotly图表,使用plotly.graph_objects.Figure类的实例。

original_size

True以实际大小显示图表。False(默认值)以适应配置的边界显示图表。

isolated

每次使用page.update()Control.update()方法更新页面或父图表控件时,都会通过调用Plotly API重新绘制图表。频繁地重新绘制大型图表可能会影响整个Flet应用的性能。

isolated设置为True以启用显式图表更新。要重新绘制图表,请调用其update()方法。