在 Excel 图形中添加特定线条

在 Excel 图形中添加特定线条

我在 Excel 电子表格中有大量 x 和 y 数据点,它们描述了 Morse 势。(见下面链接的图片)。但缺少的是红线

我有线的 y 数据点(这些是能量的单一值),但我想不出如何在我的图表中实现它们,以便它们创建一条线,该线与蓝线(实际电位)在两点相交。

Epot [kJ/mol]  (y-data points)                      
216,424964
197,922574
180,7103153
164,7115481
149,853914
136,0691033
123,2926348
111,4636475
100,5247031
90,42159993
81,10319572
72,52124097
64,63022064
57,38720461
50,75170607
44,68554761
39,15273452
34,11933483
29,55336596
25,42468734
21,70489895
18,36724522
15,38652423
12,73900178
10,40233006
8,355470767
6,578622431
5,053151582
3,761527717
2,68726178
1,814847975
1,129708756
0,618142794
0,267275786
0,06501394
0
0,239722267
0,908790996
1,938903776
3,270072396
4,849698344
6,631747169
8,576011343
10,64745232
12,81561344
15,05409624
17,34009348
19,65397284
21,97890602
24,30053839
26,60669481
28,88711796
31,13323549
33,33795312
35,49547079
37,60111944
39,65121619
41,64293594
43,57419761
45,44356353
47,2501503
48,99355026
50,673762
52,29112922
53,8462869
55,34011397
56,77369175
58,14826762
59,46522316
60,72604644
61,93230783
63,08563907
64,18771507
65,24023833
66,24492546
67,20349568
68,11766105
68,98911822
69,81954145
70,61057689
71,3638378
72,08090069
72,76330228
73,41253706
74,03005555
74,61726293
75,17551826
75,70613399
76,21037579
76,68946271
77,14456755
77,57681739
77,98729437
78,37703651
78,74703871
79,09825379
79,43159368
79,74793051
80,04809793
80,33289231
80,603074
80,85936864
81,10246839
81,3330332
81,55169208
81,7590443
81,95566062
82,14208445
82,31883299
82,48639841
82,64524885
82,79582955
82,93856386
83,07385417
83,20208295
83,3236136
83,43879137
83,54794419
83,65138349
83,74940502
83,84228954
83,93030359
84,01370015
84,09271931
84,1675889
84,2385251
84,30573301
84,36940718
84,42973217
84,48688303
84,54102575
84,59231779
84,64090841
84,68693919
84,73054431
84,77185104
84,81097998
84,8480455
84,88315598
84,91641417
84,94791746
84,97775813
85,00602366
85,03279697
85,05815659
85,08217699
85,10492872
85,12647862
85,14689003
85,16622299
85,18453434
85,20187799
85,21830497
85,23386366
85,24859987
85,26255702
85,27577624
85,28829649
85,30015468
85,31138578
85,32202291
85,33209744
85,34163911
85,35067608
85,359235
85,36734115
85,37501847
85,38228961
85,38917605
85,39569814
85,40187513
85,40772527
85,41326586
85,41851325
85,42348296
85,42818967
85,4326473
85,43686902
85,4408673
85,44465398
85,44824024
85,45163669
85,45485337
85,45789979
85,46078497
85,46351743
85,46610525
85,4685561
85,47087721
85,47307546
85,47515734
85,47712901
85,47899632
85,48076477
85,48243961
85,48402578
85,48552799
85,48695067
85,48829803
85,48957407
85,49078255
85,49192706
85,49301098
85,49403751
85,49500969
85,49593041
85,49680238
85,49762819
85,49841028
85,49915096
85,49985243
85,50051676
85,50114592
85,50174177
85,50230607 

   r [pm] (x-data points)
-70
-68
-66
-64
-62
-60
-58
-56
-54
-52
-50
-48
-46
-44
-42
-40
-38
-36
-34
-32
-30
-28
-26
-24
-22
-20
-18
-16
-14
-12
-10
-8
-6
-4
-2
0
4
8
12
16
20
24
28
32
36
40
44
48
52
56
60
64
68
72
76
80
84
88
92
96
100
104
108
112
116
120
124
128
132
136
140
144
148
152
156
160
164
168
172
176
180
184
188
192
196
200
204
208
212
216
220
224
228
232
236
240
244
248
252
256
260
264
268
272
276
280
284
288
292
296
300
304
308
312
316
320
324
328
332
336
340
344
348
352
356
360
364
368
372
376
380
384
388
392
396
400
404
408
412
416
420
424
428
432
436
440
444
448
452
456
460
464
468
472
476
480
484
488
492
496
500
504
508
512
516
520
524
528
532
536
540
544
548
552
556
560
564
568
572
576
580
584
588
592
596
600
604
608
612
616
620
624
628
632
636
640
644
648
652
656
660
664
668
672
676
680
684
688
692
696
700
704
708
712
716

我已经在上面添加了我的数据,因此请随意尝试一下。

现在我需要水平线与势图相交的特定能级:

Epot [kJ/mol]

0,708612083
2,116985012
3,51355629
4,898325918
14,26126709
26,63375702
37,82608187
47,83824165

有人知道如何解决这个问题吗?

它实际上应该是这样的:

它实际上应该是这样的

答案1

为此,您必须通过插值找到每个 y 数据能级的两个 x 数据点。

(不是真的!跳到编辑:以下。)

您可以通过在每个能级手动输入两个公式来实现此目的,例如对于第一个能级的较大 x 值:

=A39+(A40-A39)*(E11-B39)/(B40-B39)

...但您也可以使用 Excel 的 FORECAST() 函数。其形式为:

=FORECAST(x,known_y's,known_x's)

但是,编写一个公式来提供 Epot 两边的两个值(已知的 y)和两个相应的 r(已知的 x)有点繁琐(至少可以这么说)。

此公式从下表中的 D3 向下填写,得出 r 的数值,其中 r 为负数:

=FORECAST(F3,INDEX(A$17:A$38,MATCH(F3,B$17:B$38,-1)):INDEX(A$17:A$38,MATCH(F3,B$17:B$38,-1)+1),INDEX(B$17:B$38,MATCH(F3,B$17:B$38,-1)):INDEX(B$17:B$38,MATCH(F3,B$17:B$38,-1)+1))

而这个,从 D11 向下填充,得到其余部分:

=FORECAST(F11,INDEX(A$38:A$65,MATCH(F11,B$38:B$65,1)):INDEX(A$38:A$65,MATCH(F11,B$38:B$65,1)+1),INDEX(B$38:B$65,MATCH(F11,B$38:B$65,1)):INDEX(B$38:B$65,MATCH(F11,B$38:B$65,1)+1))

编辑:我意识到,由于您的数据点非常接近,插值可能有点过头了。一个非常合理的近似方法是找到最近的 x 数据点。这两个(简单得多)公式可以做到这一点:

=INDEX(A$17:A$38,MATCH(F3,B$17:B$38,-1))对于负 r

=INDEX(A$38:A$65,MATCH(F11,B$38:B$65,1))对于正 r

这是显示插值和最近值公式结果的数据表。鉴于数据的精细间距,差异小于图表上的一个像素:

在此处输入图片描述

这是添加了 8 条水平线的图表:

在此处输入图片描述

每条红线都是一个单独的系列,具有两对数据点,例如最高能级的(E3,E18)x 值和y 值。(F3,F18)

下面是放大图,显示了使用近似值所产生的错误。

在此处输入图片描述

如果您需要更高的精度,则可以使用上面的插值公式,其给出以下图表:

在此处输入图片描述

我希望这个帮助能祝你好运。

注意:如果您复制水平线的数据,然后“选择性粘贴...”>“值”,并将数据从大到小排序(如下所示),将使向图表添加线条变得更容易。您应该能够从图表菜单中选择“添加数据...”,然后选择一组 4 个单元格。

在此处输入图片描述

相关内容