让我们假设您要创建一个折线图,该折线图描绘了进入货币金额的一条线,以及一条线出去的金额。
货币进入的变量( moneyIn )是正面的,例如' 30,000'但在这种情况下,支出的金额是多少( moneyOut )是否定的,比如' -19,000'。
当我使用折线图在一段时间内相对于彼此绘制这些结果时,在负数中将一条线绘制在下方,而另一条线用正数绘制,如上所述 - 所以它们'难以相互比较。
有没有办法将负值更改为正数JUST线图,而无需计算新变量或更改数据库?我认为它基本上是(moneyOut * -1)的总和,但我不知道这是否可以为图表实现?
答案 0 :(得分:3)
您可以使用内嵌GPL代码中的TRANS
语句来翻转符号。示例如下。
DATA LIST FREE / In Out (2F5.0) Time (F1.0).
BEGIN DATA
1000 -1500 1
2000 -2500 2
3000 -3500 3
4000 -4500 4
END DATA.
GGRAPH
/GRAPHDATASET NAME="graphdataset" VARIABLES=Time In Out
/GRAPHSPEC SOURCE=INLINE.
BEGIN GPL
SOURCE: s=userSource(id("graphdataset"))
DATA: Time=col(source(s), name("Time"), unit.category())
DATA: In=col(source(s), name("In"))
DATA: Out=col(source(s), name("Out"))
TRANS: OutPos = eval(Out*-1)
GUIDE: axis(dim(1), label("Time"))
GUIDE: axis(dim(2), label("Values"))
SCALE: linear(dim(2), include(0))
ELEMENT: line(position(Time*In))
ELEMENT: line(position(Time*OutPos), color(color.blue))
END GPL.