文档
图例
由于配置过多,文字表达可能带来歧义,这里附上图例以供参考
构造函数
DistributionChart(context, [cfg])
keyName | 类型 | 描述 |
context | Object | 小程序canvas的Context |
cfg | Object | 组件配置对象,cfg的属性值会替换默认配置对应属性的值 |
cfg
组件完整的配置可见:config/distribution.js (opens new window)
keyName | 类型 | 描述 |
debug | Boolean | 是否开启调试模式,调试模式下面会打出一些调试信息,默认为false |
width | Number | canvas的宽度,因为小程序没有DOM,不能获取canvas的样式信息,需要手动传入, 默认为414 |
padding | Object | canvas的绘图区域的padding,与canvas本身样式的padding无关 |
yAxis | Object | Y轴样式配置 |
yAxisLine | Object | Y轴中轴线样式配置 |
barStyle | Object | 柱体的样式配置 |
barLabelStyle | Object | 柱子上文字的样式配置 |
padding配置
keyName | 类型 | 描述 |
left | Number | 左边距,默认为10 |
right | Number | 右边距,默认为10 |
top | Number | 上边距,默认为10 |
bottom | Number | 下边距,默认为5 |
xAxis配置
keyName | 类型 | 描述 |
show | Boolean | 是否需要展示X轴标签,默认为true |
marginTop | Number | X轴标签与X轴中轴线的间距,默认为10 |
color | String | X轴标签字体颜色,默认为#B8B8B8 |
fontSize | Number | X轴标签字体大小,默认是11 |
xAxisLine配置
keyName | 类型 | 描述 |
show | Boolean | 是否展示X轴标签对应的线条,默认为false |
centerShow | Boolean | 是否需要展示X轴的中轴线,默认为true |
width | Number | 线条的宽度,默认为0.6 |
color | String | 线条的颜色,默认为#C6C6C6 |
style | String | 线条的样式,默认为solid,可选的为dash |
yAxis配置
keyName | 类型 | 描述 |
show | Boolean | 是否需要展示Y轴标签,默认为true |
marginLeft | Number | Y轴标签与canvas左边缘的距离(不包含padding里面的设置),默认是0 |
marginRight | Number | Y轴变迁与Y轴中轴线的距离,默认为10 |
color | String | Y轴标签的字体颜色 |
fontSize | Number | Y轴标签的字体大小 |
yAxisLine配置
keyName | 类型 | 描述 |
show | Boolean | 是否展示Y轴标签对应的线条,默认为true |
centerShow | Boolean | 是否需要展示X轴的中轴线,默认为false |
width | Number | 线条的宽度,默认为0.6 |
color | String | 线条的颜色,默认为#C6C6C6 |
barStyle配置
keyName | 类型 | 描述 |
fillColor | String | 柱体填充色,默认为#6684C7 |
height | Number | 单个柱体的高度,默认为10 |
padding | Number | 每组柱体的间距,默认为12 |
compareBarMargin | Number | 每组数据有多个柱体的时候,柱体的间距,默认为3 |
topBottomPadding | Number | Y轴绘图区域的左右间距,默认为10 |
barLabelStyle配置
keyName | 类型 | 描述 |
color | String | 字体颜色,默认为#B8B8B8 |
fontSize | Number | 字体大小,默认为11 |
paddingLeft | Number | 和左边元素的间距,默认为5 |
API
draw(data, [cfg])
给定数据,执行真正的绘制操作。
keyName | 类型 | 描述 |
data | Object | 正确绘制图表需要的数据对象 |
cfg | Object | 组件配置对象,cfg的属性值会替换组件示例已有配置的属性值 |
data
keyName | 类型 | 描述 |
datasets | Array | 数组的每一项为一组柱状体,每组柱状体又可以独立配置,见下面dataset配置 |
dataset配置
keyName | 类型 | 描述 |
points | Array | 由数据点构成的数组,points的每一项配置见point |
barStyle | Object | 柱状体样式配置,会覆盖组件实例的barStyle对应的属性值 |
point
keyName | 类型 | 描述 |
label | String | 该数据名称 |
value | Number | 该数据的值 |
barLabel | String/Object/Array | 配置详情见下面 |
point.barLabel
barLabel类型 | 描述 |
String | 在该柱体上面添加一个文案,样式与组件实例的barLabelStyle相同 |
Object | 在该柱体上面添加一个文案,该对象具有两个属性,第一个为name,为label的值,第二个为style对象,会覆盖组件实例的barLabelStyle的值 |
Array | 在该柱体上面添加多个文案,数组的每一项可以是String,也可以是Object类型的,与上述两种类型一致 |
totalHeight
调用组件的draw方法之后,会计算出当前图表的总高度,需要反向设置给小程序canvas。