在图例中没有数据的情节

Jac*_*lis 4 plotly

作为对前一个问题的跟进

假设我想显示一组条形图,其中每个条形图可以是其中一个选项:A,B或C,每个条形图都有不同的颜色.我想显示条形图,但如果条形图属于特定类别,则仍然会在图例中显示该类别.不幸的是,没有颜色的类别似乎被丢弃了.请注意,在此示例中,如何从图例中删除标记为"C"的类别为蓝色的类别:

data = [
{
x: [1, 3, 4],
y: [20, 14, 23],
type: 'bar',
name: 'A',
marker: {color: '#00FFFF'}},
{
x: [2, 5, 6],
y: [8, 6, 2],
type: 'bar',
name: 'B',
marker: {color: '#FF00FF'}},
{
x: [],
y: [],
type: 'bar',
name: 'C'
marker: {color: '#FF0000'}}]
Run Code Online (Sandbox Code Playgroud)

未显示C类

我怎样才能确保C(或任何没有数据的颜色)始终显示?

etp*_*ard 6

假设具有空数据阵列的痕迹不可见.这相当于visible: false在跟踪对象中设置.

您可以通过null在数据数组中输入值来绘制图形:

data = [{
  x: [1, 3, 4],
  y: [20, 14, 23],
  type: 'bar',
  name: 'A',
  marker: {color: '#00FFFF'}
}, {
  x: [2, 5, 6],
  y: [8, 6, 2],
  type: 'bar',
  name: 'B',
  marker: {color: '#FF00FF'}
}, {
  x: [null],
  y: [null],
  type: 'bar',
  name: 'C'
  marker: {color: '#FF0000'}
}]
Run Code Online (Sandbox Code Playgroud)

这使

在此输入图像描述

  • @etpinard 你的答案是 2 年前的。在当前版本的plotly中是否有其他解决方案来解决这个主题而不将“null”值推送到“x”和“y”?这不好,因为我的其他代码期望 div.data 中的有效日期和数据。也许有一个像“showEmptyTracesInLegend”这样的配置标志,我可以将其设置为“true” (2认同)