千图网Excel文档工作室
事件 数据 高层是否有交点 底层是否有交点 次序 高层交点X值 高点Y值 交点Y值 次序 中层交点X值下 中层交点X值上 中点Y值 交点Y值下 交点Y值上 次序 底层交点X值 低点Y轴 交点Y值 水平线X值 水平分Y值
一月 504 FALSE FALSE 1 ERROR:#N/A ERROR:#N/A ERROR:#N/A 1 ERROR:#N/A ERROR:#N/A 504 ERROR:#N/A ERROR:#N/A 1 ERROR:#N/A ERROR:#N/A ERROR:#N/A 1 300
二月 354 FALSE TRUE 2 ERROR:#N/A ERROR:#N/A ERROR:#N/A 2 2 ERROR:#N/A 354 300 ERROR:#N/A 2 2 ERROR:#N/A 300 12 300
三月 120 FALSE TRUE 3 ERROR:#N/A ERROR:#N/A ERROR:#N/A 3 4 ERROR:#N/A ERROR:#N/A 300 ERROR:#N/A 3 4 120 300 1 600
四月 306 TRUE FALSE 4 5 ERROR:#N/A 600 4 ERROR:#N/A 306 ERROR:#N/A 600 4 ERROR:#N/A ERROR:#N/A ERROR:#N/A 12 600
五月 825 TRUE FALSE 5 6 825 600 5 ERROR:#N/A ERROR:#N/A ERROR:#N/A 600 5 ERROR:#N/A ERROR:#N/A ERROR:#N/A 高点x轴数据 ERROR:#VALUE!
六月 438 FALSE FALSE 6 ERROR:#N/A ERROR:#N/A ERROR:#N/A 6 ERROR:#N/A ERROR:#N/A 438 ERROR:#N/A ERROR:#N/A 6 ERROR:#N/A ERROR:#N/A ERROR:#N/A 高点y轴数据 ERROR:#VALUE!
七月 427 FALSE TRUE 7 ERROR:#N/A ERROR:#N/A ERROR:#N/A 7 8 ERROR:#N/A 427 300 ERROR:#N/A 7 8 ERROR:#N/A 300
八月 249 TRUE TRUE 8 9 ERROR:#N/A 600 8 8 ERROR:#N/A 300 600 8 8 249 300 中点x轴数据 ERROR:#VALUE!
九月 871 TRUE TRUE 9 9 871 600 9 9 ERROR:#N/A 600 300 9 10 ERROR:#N/A 300 中点y轴数据 ERROR:#VALUE!
十月 186 FALSE TRUE 10 ERROR:#N/A ERROR:#N/A ERROR:#N/A 10 10 ERROR:#N/A ERROR:#N/A 300 ERROR:#N/A 10 10 186 300
十一月 544 FALSE TRUE 11 ERROR:#N/A ERROR:#N/A ERROR:#N/A 11 12 ERROR:#N/A 544 300 ERROR:#N/A 11 12 ERROR:#N/A 300 低点x轴数据 ERROR:#VALUE!
十二月 207 FALSE FALSE 12 ERROR:#N/A ERROR:#N/A ERROR:#N/A 12 ERROR:#N/A ERROR:#N/A ERROR:#N/A ERROR:#N/A ERROR:#N/A 12 ERROR:#N/A 207 ERROR:#N/A 低点y轴数据 ERROR:#VALUE!
分割线选择区间 300 600 公式解释
高层是否有交点
=IF(B3<>"",SMALL(IF({1;1;0},B2:B3,$E$16),2)=$E$16)
判断下面一个单元格是否为空,如果为空就是最后一个数据则不需要交点
再使用if数组返回当前与下一个数据和分割线600,然后使用SMALL取第二小的值,判断第二小的是否等于交点
解释:如果中间值不等于分割值600(可根据输入的高点分割值判断),证明他们没有过度的交点。所以返回false
底层是否有交点
公式与上一样,只是判断中间值是否等于300(可根据输入的低点分割值判断)
高层交点X值
‘=IF(D2,($E$16-B2)/(B3-B2)+G2,NA())
if判断,如果为true,返回($E$16-B2)/(B3-B2),如果D2为false,那么就返回NA()
($E$16-B2)/(B3-B2)的计算方法为分割线到数据点值的距离/前后两个数据点之间的距离
高点Y值
’=IF(B2>$E$16,B2,NA())
判断当前值是否大于高点分割值,如果大于,返回原来数值,如果小于返回na()
交点Y值
‘=IF(H2,$E$16)
判断高层交点X值是否有数据,有数据表示有交点,返回分割值,反则NA()
低点各值算法与高点一致
中层交点X值下
=IF((ISNA(V2))+(ISNA(H2)),V2,IF(V2>H2,H2,V2))
判断底层交点Y值或者高层交点y值是否na,如果na那么返回(低点y值),如果不na,就再次判断低层Y值是否大于高点Y值,如果大于返回高点y值,否则返回低点y值
中层交点X值上
‘=IF((ISNA(H2))+(ISNA(V2)),H2,IF(V2>H2,V2,H2))
判断底层交点Y值或者高层交点y值是否na,如果na那么返回(高点y值),如果不na,就再次判断低层Y值是否大于高点Y值,如果大于返回低点y值,否则返回高点y值
中点Y值
’=IF(AND(B2<$E$16,B2>$D$16),B2,NA())
判断当前值是否大于低点分割值和小于高点分割值,如果是,返回当前值,反则NA()
交点Y值下
‘=IF((ISNA(V2))+(ISNA(H2)),Y2,IF(V2>H2,K2,Y2))
判断底层交点Y值或者高层交点y值是否na,如果na那么返回(低点分割值),如果不na,就再次判断低层Y值是否大于高点Y值,如果大于返回高点分割值,否则返回低点分割值
交点Y值上
判断底层交点Y值或者高层交点y值是否na,如果na那么返回(高点分割值),如果不na,就再次判断低层Y值是否大于高点Y值,如果大于返回低点分割值,否则返回高点分割值
全图使用散点图制作
总的逻辑比较绕 需要一步一步分解添加数据看效果
可根据分割线选择区间进行调整分割值
具体操作请看动画