python - 散景 - 标签集 - 忽略 NaN 值
问题描述
我正在为 Bokeh 可视化中的所有点分配标签。
但是,为每个点分配标签会使事情变得过于拥挤。有100个或更多点。
所以我在我的 pandas df 中创建了一个新列,其中我只有一个随机的 10 行集的标签值。其他行具有 NaN 值。
有没有办法让 Bokeh 忽略 NaN 值而不为它们创建标签?
labels = LabelSet(x='myDateColumn', y='myNumericColumn', text='columnWithOnly10RowsHavingTextValue', level='glyph',
x_offset=5, y_offset=5, source=source, render_mode='canvas')
p.add_layout(labels)
解决方案
您可以为标签创建一个新数据框并删除具有 NaN 值的行,将其转换为 ColumnDataSource 并将其用作标签的源。
df = pd.DataFrame.from_dict(data)
source = ColumnDataSource(df)
p.circle(x='myDateColumn', y='myNumericColumn', source=source)
dfNoNaN = df.dropna()
noNaNsource = ColumnDataSource(dfNoNaN)
labels = LabelSet(x='myDateColumn', y='myNumericColumn', text='columnWithOnly10RowsHavingTextValue', level='glyph',
x_offset=5, y_offset=5, source=noNaNsource, render_mode='canvas')
p.add_layout(labels)
推荐阅读
- javascript - 是否可以在安装之前在 Vuex getter 中返回包装对象的内部对象的值?
- powershell - power shell脚本输出到txt文件
- google-apps-script - 使用谷歌应用脚本获取特定列中具有值的单元格的计数(整数)
- java - 如何将 .json 文件中的数组加载到 App 中
- swift - 如何:使用 Swift UI 设置文本的背景颜色
- python - 有没有办法使用 librosa 以字节为单位设置音频文件的样本大小?
- reactjs - Gatsby / Graphql - 无法从查询中显示 img
- adal.js - microsoft-adal-angular6 令牌刷新错误
- python - 用于正则表达式比较的 Python 字符串到原始字符串
- javascript - Vue使用项目值数组更新状态