擅长:python、mysql、java
<p>您可以通过以下两种方式完成:</p>
<p>方法1:使用<code>pd.series.round</code>函数</p>
<pre><code>import plotly.express as px
import pandas as pd
df = pd.DataFrame({'num': [1, 2, 3],
'sqrt': (pd.Series([1, 2, 3]) ** 0.5).round(2)})
fig = px.bar(df, x='num', y='sqrt', title='Square root')
fig.show()
</code></pre>
<p>方法2:使用python内置的<code>round</code>函数。为了让它起作用,我必须使用<code>list comprehension</code>而不是<code>pandas series</code>。As系列不直接支持它</p>
<pre><code>import plotly.express as px
import pandas as pd
df = pd.DataFrame({'num': [1, 2, 3],
'sqrt': [round(x**(1/2),2) for x in [1,2,3]]})
fig = px.bar(df, x='num', y='sqrt', title='Square root')
fig.show()
</code></pre>
<p><strong>编辑</strong>:</p>
<p>方法3:正如下面@M.Forsythe所回答的,您也可以使用plotly的<code>hover_data</code>参数来完成</p>
<pre><code>import plotly.express as px
import pandas as pd
df = pd.DataFrame({'num': [1, 2, 3],
'sqrt': pd.Series([1, 2, 3]) ** 0.5})
fig = px.bar(df, x='num', y='sqrt', title='Square root',hover_data={'sqrt':':.2f'})
fig.show()
</code></pre>