As illustrated in this question我们可以像这样给echart添加一个线性梯度:
areaStyle: {
color: new graphic.LinearGradient(0, 0, 0, 1, [
{
offset: 0,
color: 'rgb(255, 158, 68)'
},
{
offset: 1,
color: 'rgb(255, 70, 131)'
}])
}
字符串
Also created a Stackblitz demo here.的
在我看到的所有示例中,LinearGradient
示例都以LinearGradient(0, 0, 0, 1
开头...我想知道参数0, 0, 0, 1
是什么意思
1条答案
按热度按时间ztyzrc3y1#
对于
LinearGradient
,坐标用于整个绘图区域:global
参数为false
(默认):(0, 0)
是左上角,(1, 1)
是右下角global
是true
,则坐标以像素为单位,(0, 0)
是左上角,但右下角的坐标是(w-1, h-1)
,其中w
和h
是绘图区域的宽度和高度,以像素为单位。(x0, y0)
-(x1, y1)
是这些坐标中的线段的端点:沿着该段的线(以及沿着所有平行线),颜色根据X1 M13 N1 X中的数据而改变。沿着垂直于此线段的线,颜色将相同。梯度只能用整个地块面积来表示,这一事实通常是一个缺点:例如,人们希望填充颜色是所绘制的函数值的一部分,但这是不可能的。
示例:
LinearGradient(0, 0, 0, 1, ....)
表示垂直变化的渐变(从顶部=0到底部=1),而所有水平线具有相同的颜色。它相当于LinearGradient(1, 0, 1, 1, ....)
或LinearGradient(0.43, 0, 0.43, 1, ....)
。LinearGradient(0, 0, 1, 0, ....)
表示水平变化的渐变(从左=0到右=1),而所有垂直线具有相同的颜色。LinearGradient(0, 0, 1, 1, ....)
沿着左上角到右下角的变化取决于绘图区域的纵横比(如果宽度和高度相等,则为450)。colorStops
是具有color
和offset
属性的对象数组。偏移是从0到1的数字,表示(x0, y0)
-(x1,y1), obviously,
偏移上的点:0is
(x 0,y 0),
偏移:1means
(x1,y1)and
偏移0.5 ′是段的中间。梯度的颜色是通过每两个连续
colorStops
之间的线性插值沿着该段计算的。在偏移量之外(如果第一个偏移量大于0或最后一个偏移量小于1)和线段之外(如果
(x0, y0)
和/或(x1, y1)
是(0, 0)
-(1, 1)
内部的点),颜色是恒定的(即第一个偏移量的颜色或最后一个偏移量的颜色)。在下面的示例中,左侧图表有两个色标,蓝色在左上角,黄色在右下角。右边的图表有四个颜色停止:蓝色在左下角,黄色在右上角,并且在两个红色色标之间-在这两个色标之间,颜色是恒定的,因为插值总是产生红色。
个字符
另一种经常使用的技术是为各种偏移间隔设置颜色常数(如上面的红色),并将其更改为零长度的间隔,(用不同的颜色重复相同的偏移)产生均匀的颜色条纹,如:
型
的字符串