NuclearDispersionSystem/ant-design-vue-jeecg/node_modules/@antv/g2/esm/geometry/interval.js.map
2023-09-14 14:47:11 +08:00

1 line
4.7 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{"version":3,"file":"interval.js","sourceRoot":"","sources":["../../src/geometry/interval.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AAEjC,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,QAAQ,MAAM,QAAQ,CAAC;AAC9B,yBAAyB;AACzB,OAAO,kBAAkB,CAAC;AAC1B,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD;;;GAGG;AACH;IAAsC,4BAAQ;IAA9C;QAAA,qEAqEC;QApEiB,UAAI,GAAW,UAAU,CAAC;QAC1B,eAAS,GAAW,UAAU,CAAC;QACrC,oBAAc,GAAY,IAAI,CAAC;;IAkE3C,CAAC;IAhEC;;;;OAIG;IACO,uCAAoB,GAA9B,UAA+B,GAAU;QACvC,IAAM,GAAG,GAAG,iBAAM,oBAAoB,YAAC,GAAG,CAAC,CAAC;QAE5C,oBAAoB;QACpB,IAAI,IAAI,CAAC;QACT,IAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAC3C,IAAI,QAAQ,EAAE;YACZ,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YACjD,MAAM;YACN,IAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;YACnC,IAAM,eAAe,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAC;YACxD,IAAI,GAAG,IAAI,GAAG,eAAe,CAAC;SAC/B;aAAM;YACL,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;gBACrB,IAAI,CAAC,WAAW,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;aACzC;YACD,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC;SACzB;QACD,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC;QAEhB,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;;OAGG;IACO,8BAAW,GAArB;QACE,iBAAM,WAAW,WAAE,CAAC;QACpB,IAAM,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,mBAAmB;QACnB,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,KAAK,OAAO,EAAE;YACpC,MAAM,CAAC,MAAM,CAAC;gBACZ,IAAI,EAAE,KAAK;gBACX,GAAG,EAAE,CAAC;gBACN,yDAAyD;gBACzD,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC;aAC/D,CAAC,CAAC;SACJ;aAAM;YACL,iBAAiB;YACjB,IAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;YACzB,IAAA,KAAK,GAAqB,MAAM,MAA3B,EAAE,GAAG,GAAgB,MAAM,IAAtB,EAAE,GAAG,GAAW,MAAM,IAAjB,EAAE,IAAI,GAAK,MAAM,KAAX,CAAY;YACzC,IAAI,IAAI,KAAK,MAAM,EAAE;gBACnB,cAAc;gBACd,qCAAqC;gBACrC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE;oBAC9C,MAAM,CAAC,MAAM,CAAC;wBACZ,GAAG,EAAE,CAAC;qBACP,CAAC,CAAC;iBACJ;gBACD,yCAAyC;gBACzC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE;oBAC/C,MAAM,CAAC,MAAM,CAAC;wBACZ,GAAG,EAAE,CAAC;qBACP,CAAC,CAAC;iBACJ;aACF;SACF;IACH,CAAC;IACH,eAAC;AAAD,CAAC,AArED,CAAsC,QAAQ,GAqE7C","sourcesContent":["import { get } from '@antv/util';\nimport { Datum } from '../interface';\nimport { getXDimensionLength } from '../util/coordinate';\nimport Geometry from './base';\n/** 引入对应的 ShapeFactory */\nimport './shape/interval';\nimport { getDefaultSize } from './util/shape-size';\n\n/**\n * Interval 几何标记。\n * 用于绘制柱状图、饼图、条形图、玫瑰图等。\n */\nexport default class Interval extends Geometry {\n public readonly type: string = 'interval';\n public readonly shapeType: string = 'interval';\n protected generatePoints: boolean = true;\n\n /**\n * 获取每条数据的 Shape 绘制信息\n * @param obj 经过分组 -> 数字化 -> adjust 调整后的数据记录\n * @returns\n */\n protected createShapePointsCfg(obj: Datum) {\n const cfg = super.createShapePointsCfg(obj);\n\n // 计算每个 shape 的 size\n let size;\n const sizeAttr = this.getAttribute('size');\n if (sizeAttr) {\n size = this.getAttributeValues(sizeAttr, obj)[0];\n // 归一化\n const coordinate = this.coordinate;\n const coordinateWidth = getXDimensionLength(coordinate);\n size = size / coordinateWidth;\n } else {\n if (!this.defaultSize) {\n this.defaultSize = getDefaultSize(this);\n }\n size = this.defaultSize;\n }\n cfg.size = size;\n\n return cfg;\n }\n\n /**\n * 调整 y 轴的 scale 范围。\n * 对于 Y 轴为数值轴柱状图,默认从 0 开始 生长。\n */\n protected adjustScale() {\n super.adjustScale();\n const yScale = this.getYScale();\n // 特殊逻辑:饼图需要填充满整个空间\n if (this.coordinate.type === 'theta') {\n yScale.change({\n nice: false,\n min: 0,\n // 发生过 stack 调整yScale 的 max 被调整过this.updateStackRange()\n max: Math.max(Math.max.apply(null, yScale.values), yScale.max),\n });\n } else {\n // 柱状图数值轴默认从 0 开始\n const scaleDefs = this.scaleDefs;\n const { field, min, max, type } = yScale;\n if (type !== 'time') {\n // time 类型不做调整\n // 柱状图的 Y 轴要从 0 开始生长,但是如果用户设置了则以用户的为准\n if (min > 0 && !get(scaleDefs, [field, 'min'])) {\n yScale.change({\n min: 0,\n });\n }\n // 柱当柱状图全为负值时也需要从 0 开始生长,但是如果用户设置了则以用户的为准\n if (max <= 0 && !get(scaleDefs, [field, 'max'])) {\n yScale.change({\n max: 0,\n });\n }\n }\n }\n }\n}\n"]}