首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于0%红色- 100%绿色设置图形梯度

问基于0%红色- 100%绿色设置图形梯度
EN

Stack Overflow用户
提问于 2021-07-02 04:51:35
回答 1查看 27关注 0票数 0

我希望我能解释得够清楚,就这样吧。我有一些类似于这个沙箱的代码,你可以看到图是红色和绿色的。它显示出相对于它自己的数字的低点和高点,而不一定是基于消极和积极的,所以.

<stop offset=""控制梯度位置。我已经计算出0% - 100%是完全均匀的梯度红色到绿色,80% - 100%使它与最后的20%绿色和0% - 20%使它主要绿色到20%下半红色。(见下图)

因此,正如您所看到的,0 - 20%图在示例中工作得最好,但是如果有人从0美元急剧下降到-100美元,它将无法工作。

我可以返回图中的最高值($72)和最低值(-$10),但我不知道如何将其转换为梯度偏移百分比。

上帝,我希望我能正确地解释这一点。

​

​

0 - 100%

​

​

0 - 20%

​

​

80% - 100%

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-07-02 05:37:58

我有很好的东西

首先,通过比较正数来判断大多数是绿色还是红色。然后得到较大数字中较小数字的百分比,并将偏移量设置为这些数字。

代码语言:javascript
复制
var diff = 0
var stopOffsetRed = '0%'
var stopOffsetGreen = '100%'
if (this.state.largestAmountWon > Math.abs(this.state.smallestAmountWon)) {
  diff = (Math.abs(this.state.smallestAmountWon) / this.state.largestAmountWon) * 100
  stopOffsetRed = '0%'
  stopOffsetGreen = diff.toFixed(2) + '100%'
} else {
  diff = 100 - (this.state.largestAmountWon / Math.abs(this.state.smallestAmountWon)) * 100
  stopOffsetRed = diff + '%'
  stopOffsetGreen = '100%'
}

结果

​

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68219763

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档