简体   繁体   English

Plotly 快速更新饼图

[英]Plotly express update of the pie chart

The below code produces a pie chart presented in a picture.下面的代码生成一个以图片显示的饼图。 I need to add a $ sign after the prices in the pie chart, can someone help me do that?我需要在饼图中的价格后添加一个 $ 符号,有人可以帮我这样做吗? I just started exploring plotly:) Thank you in advance!我刚开始探索 plotly :) 提前谢谢!

pie = data[["room_type","price"]]
pie_chart = pie.groupby(['room_type'], as_index=False).median()

fig3 = px.pie(pie_chart,
          values='price',
          names='room_type',
          color_discrete_sequence =['#de425b','#ef805b','#f7b672'])
fig3.update_traces(hoverinfo='label+percent', textinfo='value', textfont_size=17)
fig3.update_layout(
    title_text = 'Median of prices per room type',
    legend_title = 'Room type',
    title_font = dict(family='Courier', size=16, color='black'),
    title_x=0.5,
    font_family="Courier",
    font_color="black",
    legend_title_font_color="black"
   )

饼形图

In the fig.update_traces method , you can pass textinfo='text' instead of textinfo='labels' and then define text to be a list of prices from your DataFrame with a dollar sign as a prefix for each price.fig.update_traces method中,您可以传递textinfo='text'而不是textinfo='labels' ,然后将 text 定义为 DataFrame 中的价格列表,并以美元符号作为每个价格的前缀。

import pandas as pd
import plotly.express as px

# pie = data[["room_type","price"]]
# pie_chart = pie.groupby(['room_type'], as_index=False).median()

## recreate DataFrame
pie_chart = pd.DataFrame({
    'room_type':['Entire room/apt','Private room','Shared room'],
    'price': ['68','35','16']
})

fig3 = px.pie(pie_chart,
          values='price',
          names='room_type',
          color_discrete_sequence =['#de425b','#ef805b','#f7b672'])
## pass a list of values 
fig3.update_traces(
    hoverinfo='label+percent', 
    text=['$' + price for price in pie_chart.price.values],
    textinfo='text', 
    textfont_size=17)
fig3.update_layout(
    title_text = 'Median of prices per room type',
    legend_title = 'Room type',
    title_font = dict(family='Courier', size=16, color='black'),
    title_x=0.5,
    font_family="Courier",
    font_color="black",
    legend_title_font_color="black"
   )
fig3.show()

在此处输入图像描述

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM