如何避免在散点图中重叠文本?
Posted
技术标签:
【中文标题】如何避免在散点图中重叠文本?【英文标题】:How to avoid overlapping text in a plotly scatter plot? 【发布时间】:2021-07-14 01:18:42 【问题描述】:我正在寻找一种解决方案来避免文本标签中的文本重叠。我用散点图创建图像。也许这里有自动化。
from pandas import util
import plotly.express as px
import plotly.graph_objects as go
df= util.testing.makeDataFrame()
df_keyfigures_all = df[['A','B']]
fig = px.scatter(df_keyfigures_all, x="A", y="B",size_max=60,
text=df_keyfigures_all.index)
fig.update_traces(textposition='top center')
fig.layout = go.Layout(yaxis=dict(tickformat=".0%"), xaxis=dict(tickformat=".0%"),
yaxis_title="A", xaxis_title="B")
fig.update_layout(showlegend=False)
plotly.io.write_image(fig, file='keyfigures.png', format='png')
感谢您的帮助!
【问题讨论】:
【参考方案1】:这不是完美的解决方案,但一种方法是将文本隐藏在悬停文本中。
fig = px.scatter(df_keyfigures_all, x="A", y="B",size_max=60,
hover_name = df_keyfigures_all.index)
【讨论】:
谢谢,但我必须使用 pdf 格式的图像【参考方案2】:不幸的是,似乎没有直接的方法可以做到这一点。稍微挖掘一下 plotly 社区论坛,您会发现它有 already been requested 和问题的 developers are aware。
【讨论】:
以上是关于如何避免在散点图中重叠文本?的主要内容,如果未能解决你的问题,请参考以下文章
[散点图][Plotly][Python] 如何在散点图中标记心形
echart散点图问题:如何在散点图中特别标出某一个特定的点,如[120,70]
R语言ggplot2可视化:ggplot2可视化分组散点图并使用geom_smooth函数在散点图图中为不同的散点簇添加对应的回归曲线
R语言可视化散点图(scatter plot)并在散点图中叠加回归曲线叠加lowess拟合曲线(linear and lowess fit lines)使用plotlineabline函数