echarts 关系图中怎么使用多维度数据进行视觉MapvisualMap?

qzwqbdag  于 2022-11-03  发布在  Echarts
关注(0)|答案(3)|浏览(342)

散点图的data使用二维array,所以visualMap使用dimension定位。
地理散点图的data使用object,visualMap使用每个点中的value定位。

那关系图呢?我需要同时Map颜色、大小到每个nodes, 这时候怎么才能与数据中相应属性对应起来?

data=[{
    id: "10",
    dataIndex: 2,
    name: "深圳市物业发展(集团)股份有限公司",
    category: 0,
    return: 0.6307,
    sentiment: 0.2642,
    capital: 0.5807,
}]

比如每个节点的数据如上所示,我需要把return属性Map到节点颜色上,把capital属性Map到symbolSize上。
怎么才能对应起来?

我尝试过把每个节点里的数据变成一个array,如下:

data=[{
    id: "10",
    dataIndex: 2,
    name: "深圳市物业发展(集团)股份有限公司",
    category: 0,
    return: 0.6307,
    sentiment: 0.2642,
    capital: 0.5807,
    value: [0.6307, 0.2642,  0.5807,]
}]

配置如下:

visualMap: [
        {        
          dimension: 1,
          min: 0,
          max: 1,
          calculable: true,
          inRange: {
            color: ['#50a3ba', '#eac736', '#d94e5d']
          },
        },
        {
          dimension: 0,
          min: 0,
          max: 1,
          calculable: true,
          inRange: {
            symbolSize: [5, 50]
          },
        },
      ],

结果只有 dimension: 0的维度能Map成功,或者不设置dimension的时候,貌似取的是最后一个数。也就是说,它只能取到每个节点的value(array)里的第一个数字和最后一个数。
有什么办法能让echart把关系图里的一个节点的多个属性Map到visualMap里?

doinxwow

doinxwow1#

当然版本中,关系图只能用 viusualMap Map颜色。
这有望在下版本中得到改善。参见 #9171

3ks5zfa0

3ks5zfa02#

@100pah
我现在看到的是有大小有颜色的。但就是两个都对应到value:[0, 1, 2, 3]中的第一个数,不能动态对应到不同的列上去……

cx6n0qe3

cx6n0qe33#

@100pah
当然版本中,关系图只能用 viusualMap Map颜色。
这有望在下版本中得到改善。参见 #9171

我现在在做知识图谱的项目,这个可以同时选择「颜色」和「大小」动态Map到不同的node属性上是非常必须的功能。可能我等不到下版本发布,现在可以通过使用dev版本之类的来使用这个新功能吗?

相关问题