Рисование нескольких линий с короткой длиной - PullRequest
0 голосов
/ 29 марта 2020

У меня есть данные, и я пытаюсь нанести на них abline. У меня есть код:

par(mfrow = c(1, 1))
plot(as.zoo(data))
ablinelines <- Map(
  abline,
  a = abdata$a_data,
  b = abdata$b_data
)

Но я бы хотел, чтобы длина abline s не охватывала всю область графика. Подобный вопрос был задан здесь с использованием регрессий. Решения предложили использовать predict, но у меня нет линейных моделей. Другие решения предложили использовать clip(x1,x2, y1,y2). Другой предложил ablineclip() из пакета library(plotrix).

Этот код использует ablineclip() без каких-либо ограничений по длине на abline:

par(mfrow = c(1, 1))
plot(as.zoo(data))
ablinelines <- Map(
  plotrix::ablineclip,
  a = abdata$a_data,
  b = abdata$b_data
)

Но когда я пытаюсь сделать следующее:

par(mfrow = c(1, 1))
plot(as.zoo(data))
ablinelines <- Map(
  plotrix::ablineclip,
  a = abdata$a_data,
  b = abdata$b_data,
  x1 = 1, x2 = 40, y1 = 1, y2 = 2
)

Нет строк Нарисуйте.

Я хочу нарисовать abline с максимальной длиной, скажем, 10 дней, чтобы у меня было такое же количество линий, как сейчас, но намного короче. Я также видел, как используется segment, но положение линий со временем меняется на моем графике.

Мои данные:

data <- structure(c(100.899391, 102.160881, 102.01532, 102.257912, 102.733398, 
102.47139, 102.665474, 105.275772, 105.82888, 106.110291, 108.507118, 
108.313049, 109.244606, 109.419266, 108.041328, 106.80896, 105.625107, 
104.625633, 105.139915, 105.896812, 105.906525, 104.373322, 103.868736, 
103.499992, 103.742592, 101.617477, 97.50309, 94.310562, 95.115967, 
95.475014, 97.357521, 96.600639, 94.960701, 94.689011, 94.097076, 
89.662468, 86.295273, 86.363213, 85.509277, 86.741653, 87.90609, 
88.032249, 90.322319, 89.681877, 89.216103, 89.245216, 90.564911, 
90.846321, 89.274323, 88.740608, 89.216103, 88.905579, 89.293716, 
91.127747, 89.701294, 89.565437, 89.681877, 89.846832, 90.720169, 
90.186478, 93.194626, 92.505669, 93.543961, 93.340187, 91.388885, 
91.564507, 89.730286, 88.949768, 88.881477, 89.31076, 88.559517, 
88.979042, 86.998474, 87.417999, 86.042343, 84.578865, 83.856888, 
81.749489, 85.008156, 87.144814, 86.666756, 87.642403, 87.7985, 
84.949615, 88.247299, 88.666824, 89.574188, 89.496124, 91.340111, 
92.306, 91.68158, 91.457176, 91.057167, 92.51088, 94.218262, 
94.159729, 93.154808, 93.642639, 94.832924, 95.457336, 96.345177, 
99.711151, 101.906364, 101.92588, 101.145363, 102.218567, 101.564888, 
100.520943, 100.316055, 99.516029, 101.545387, 101.867348, 101.418533, 
102.345406, 102.423462, 103.83815, 103.038116, 104.335724, 105.311378, 
104.24791, 105.155273, 105.408936, 107.038269, 106.726067, 106.696655, 
105.8536, 105.667336, 106.26532, 107.000549, 108.38279, 107.804405, 
107.951454, 108.03968, 109.402306, 110.059105, 107.814209, 109.049393, 
106.843704, 107.226021, 108.67688, 108.912148, 110.794342, 110.774742, 
111.451141, 110.862968, 111.039413, 111.353119, 111.794258, 111.666824, 
110.402222, 111.519775, 112.098145, 114.019547, 113.745064, 114.078377, 
111.40213, 111.137451, 111.647202, 113.715668, 108.618065, 106.324142, 
107.029953, 107.451492, 108.471008, 106.38295, 107.451492, 109.225845, 
107.265236, 104.726242, 104.12825, 103.461647, 104.157661, 101.716705, 
101.363777, 101.001068, 100.765808, 99.658058, 97.952316, 99.491394, 
98.618927, 97.726852, 99.26593, 99.795296, 100.520729, 101.59906, 
102.010788, 103.696922, 106.151344, 107.570763, 108.773338, 110.547615, 
110.922188, 110.665901, 110.232193, 109.463341, 108.812767, 108.546623, 
108.960625, 109.837906, 111.227753, 110.468765, 110.113907, 110.330757, 
108.773338, 111.415039, 114.027176, 116.866028, 117.733459, 118.433319, 
118.758606, 116.018318, 113.997604, 112.962608, 113.652618, 111.858612, 
111.838898, 114.253899, 111.641762, 112.223328, 112.233185, 110.685616, 
115.417038, 114.943893, 114.332748, 115.51561, 114.736893, 114.431313, 
113.22876, 109.433754, 109.285912, 106.792046, 108.48748, 109.423912, 
113.031609, 111.631897, 110.518051, 111.119331, 108.329765, 110.035049, 
112.351471, 114.086327, 112.459892, 113.327332, 113.30761, 109.138054, 
110.094193, 111.30661, 112.065613, 113.356895, 113.918747, 111.610466, 
113.284714, 112.868629, 113.126205, 112.36338, 112.630859, 111.947289, 
111.947289, 115.464226, 111.887848, 113.631447, 113.354057, 113.007324, 
111.768967, 112.145424, 111.283539, 111.214188, 111.511391, 111.768967, 
112.511978, 110.619774, 108.390739, 108.430359, 110.322571, 110.134331, 
107.88549, 109.480492, 110.26313, 112.313843, 111.848221, 112.561516, 
113.017227, 114.275391, 115.801048, 117.396049, 117.326706, 124.964874, 
125.024315, 125.618736, 126.302299, 127.976547, 127.808128, 126.668861, 
128.194504, 129.432861, 132.068085, 130.790115, 131.434052, 132.583237, 
132.216705, 132.642685, 130.988251, 130.621689, 130.849548, 129.898468, 
130.31456, 130.542419, 130.294754, 128.055817, 128.045898, 129.522034, 
129.59137, 129.155472, 127.55056, 128.147675, 127.908821, 129.272202, 
129.511047, 129.461288, 129.142838, 129.182632, 128.993546, 129.361771, 
130.177795, 130.028534, 129.560806, 131.312286, 131.28244, 132.227844, 
132.576157, 132.436844, 130.973938, 130.346985), index = structure(c(1536019200, 
1536105600, 1536192000, 1536278400, 1536537600, 1536624000, 1536710400, 
1536796800, 1536883200, 1537142400, 1537228800, 1537315200, 1537401600, 
1537488000, 1537747200, 1537833600, 1537920000, 1538006400, 1538092800, 
1538352000, 1538438400, 1538524800, 1538611200, 1538697600, 1538956800, 
1539043200, 1539129600, 1539216000, 1539302400, 1539561600, 1539648000, 
1539734400, 1539820800, 1539907200, 1540166400, 1540252800, 1540339200, 
1540425600, 1540512000, 1540771200, 1540857600, 1540944000, 1541030400, 
1541116800, 1541376000, 1541462400, 1541548800, 1541635200, 1541721600, 
1541980800, 1542067200, 1542153600, 1542240000, 1542326400, 1542585600, 
1542672000, 1542758400, 1542931200, 1543190400, 1543276800, 1543363200, 
1543449600, 1543536000, 1543795200, 1543881600, 1544054400, 1544140800, 
1544400000, 1544486400, 1544572800, 1544659200, 1544745600, 1545004800, 
1545091200, 1545177600, 1545264000, 1545350400, 1545609600, 1545782400, 
1545868800, 1545955200, 1546214400, 1546387200, 1546473600, 1546560000, 
1546819200, 1546905600, 1546992000, 1547078400, 1547164800, 1547424000, 
1547510400, 1547596800, 1547683200, 1547769600, 1548115200, 1548201600, 
1548288000, 1548374400, 1548633600, 1548720000, 1548806400, 1548892800, 
1548979200, 1549238400, 1549324800, 1549411200, 1549497600, 1549584000, 
1549843200, 1549929600, 1550016000, 1550102400, 1550188800, 1550534400, 
1550620800, 1550707200, 1550793600, 1551052800, 1551139200, 1551225600, 
1551312000, 1551398400, 1551657600, 1551744000, 1551830400, 1551916800, 
1552003200, 1552262400, 1552348800, 1552435200, 1552521600, 1552608000, 
1552867200, 1552953600, 1553040000, 1553126400, 1553212800, 1553472000, 
1553558400, 1553644800, 1553731200, 1553817600, 1554076800, 1554163200, 
1554249600, 1554336000, 1554422400, 1554681600, 1554768000, 1554854400, 
1554940800, 1555027200, 1555286400, 1555372800, 1555459200, 1555545600, 
1555891200, 1555977600, 1556064000, 1556150400, 1556236800, 1556496000, 
1556582400, 1556668800, 1556755200, 1556841600, 1557100800, 1557187200, 
1557273600, 1557360000, 1557446400, 1557705600, 1557792000, 1557878400, 
1557964800, 1558051200, 1558310400, 1558396800, 1558483200, 1558569600, 
1558656000, 1559001600, 1559088000, 1559174400, 1559260800, 1559520000, 
1559606400, 1559692800, 1559779200, 1559865600, 1560124800, 1560211200, 
1560297600, 1560384000, 1560470400, 1560729600, 1560816000, 1560902400, 
1560988800, 1561075200, 1561334400, 1561420800, 1561507200, 1561593600, 
1561680000, 1561939200, 1562025600, 1562112000, 1562284800, 1562544000, 
1562630400, 1562716800, 1562803200, 1562889600, 1563148800, 1563235200, 
1563321600, 1563408000, 1563494400, 1563753600, 1563840000, 1563926400, 
1564012800, 1564099200, 1564358400, 1564444800, 1564531200, 1564617600, 
1564704000, 1564963200, 1565049600, 1565136000, 1565222400, 1565308800, 
1565568000, 1565654400, 1565740800, 1565827200, 1565913600, 1566172800, 
1566259200, 1566345600, 1566432000, 1566518400, 1566777600, 1566864000, 
1566950400, 1567036800, 1567123200, 1567468800, 1567555200, 1567641600, 
1567728000, 1567987200, 1568073600, 1568160000, 1568246400, 1568332800, 
1568592000, 1568678400, 1568764800, 1568851200, 1568937600, 1569196800, 
1569283200, 1569369600, 1569456000, 1569542400, 1569801600, 1569888000, 
1569974400, 1570060800, 1570147200, 1570406400, 1570492800, 1570579200, 
1570665600, 1570752000, 1571011200, 1571097600, 1571184000, 1571270400, 
1571356800, 1571616000, 1571702400, 1571788800, 1571875200, 1571961600, 
1572220800, 1572307200, 1572393600, 1572480000, 1572566400, 1572825600, 
1572912000, 1572998400, 1573084800, 1573171200, 1573430400, 1573516800, 
1573603200, 1573689600, 1573776000, 1574035200, 1574121600, 1574208000, 
1574294400, 1574380800, 1574640000, 1574726400, 1574812800, 1574985600, 
1575244800, 1575331200, 1575417600, 1575504000, 1575590400, 1575849600, 
1575936000, 1576022400, 1576108800, 1576195200, 1576454400, 1576540800, 
1576627200, 1576713600, 1576800000, 1577059200, 1577145600, 1577318400, 
1577404800, 1577664000), tzone = "UTC", tclass = "Date"), class = c("xts", 
"zoo"), src = "yahoo", updated = structure(1585497458.94365, class = c("POSIXct", 
"POSIXt")), .Dim = c(333L, 1L), .Dimnames = list(NULL, "Var"))


abdata <- structure(c(4090.52717646853, 3977.4574200542, 3854.39942019735, 
3722.07188422163, 3580.50611146852, 3433.14494981919, 3279.52994120821, 
3118.97320199787, 2951.19788754898, 2779.71675338917, 2603.57698159098, 
2425.45231590976, 2249.30868102405, 2076.04753357251, 1908.21226891628, 
1745.54886637446, 1587.47689480725, 1432.89917587816, 1282.43354875323, 
1135.7732275588, 994.456774586996, 859.306564028116, 730.373257295558, 
602.681792675265, 473.95346099277, 345.884209281104, 219.454750151765, 
92.4714732969807, -38.5719635790247, -174.690885995819, -314.202715086836, 
-454.950302616333, -596.572525988489, -739.584398297371, -883.69508617639, 
-1029.28198233145, -1175.30053034296, -1326.98548099293, -1486.07229223585, 
-1652.37493642949, -1825.89912426362, -2003.0601229739, -2183.08482672384, 
-2364.60314084145, -2545.81293576459, -2725.36976418692, -2902.69955414313, 
-3075.34348432789, -3241.26876603984, -3400.32157004489, -3553.9467047418, 
-3703.90024693877, -3847.67586283987, -3985.40843348981, -4116.23092340176, 
-4238.57276133419, -4354.48448236156, -4459.97507171317, -4555.96643329584, 
-4639.40480100141, -4708.9908015104, -4766.39627553016, -4808.37863197489, 
-4837.68069517773, -4853.11253966933, -4855.95352505191, -4846.84655483969, 
-4826.28963767812, -4796.48441640452, -4759.41057111816, -4714.21619929683, 
-4658.7656770901, -4595.10190544002, -4523.14370970194, -4448.01986992569, 
-4368.53622734564, -4287.2477752944, -4202.78504788954, -4115.94000730699, 
-4030.43536207345, -3946.60472530317, -3856.15341822096, -3757.61718256963, 
-3652.30105471859, -3541.24599049056, -3430.53447613347, -3314.86329938111, 
-3196.39599069491, -3076.65141493255, -2953.72384418081, -2824.23919601012, 
-2687.25618287246, -2544.24881937669, -2397.11090157353, -2244.24059393804, 
-2085.81672684752, -1920.56288850226, -1749.99015374723, -1574.91729843352, 
-1393.66174294699, -1209.19902815776, -1020.76275988722, -827.216231678405, 
-627.277451194444, -420.613489765494, -209.952176453192, 1.42163065254555, 
213.841732521748, 423.147482284615, 624.848704976168, 815.569420080866, 
992.382195936002, 1155.55620528547, 1303.594205993, 1435.74960947895, 
1552.83988816578, 1654.6399368226, 1742.79409010177, 1815.65909997298, 
1873.82259913282, 1916.98365103885, 1941.534113034, 1949.44845230676, 
1941.65649646928, 1920.09989511004, 1886.25767193797, 1837.06116654075, 
1768.75641487958, 1677.80671453133, 1565.01792436886, 1431.0878825657, 
1278.1862708545, 1110.31080097131, 930.373294259168, 741.008486746479, 
544.018447159342, 342.892238858568, 136.840772976454, -74.9779599493572, 
-290.741091645392, -508.980626618398, -727.235536223607, -941.495379134515, 
-1154.36327011143, -1363.19638093173, -1564.54444220648, -1759.46376122446, 
-1945.61157130399, -2120.70448540926, -2282.41047629476, -2425.86382917688, 
-2552.66139697591, -2658.56084569703, -2744.15895308801, -2808.61424050998, 
-2856.37101168382, -2885.09824798678, -2896.00364246637, -2889.59200647079, 
-2862.47562502537, -2814.04376942548, -2752.45784161832, -2682.35757098027, 
-2601.13358354016, -2509.69435154014, -2406.23844286665, -2288.12970951192, 
-2155.78560608387, -2009.40311710729, -1854.01417600885, -1694.93151269044, 
-1534.53132237842, -1372.14508549846, -1209.33056898968, -1049.63527804598, 
-893.962050922528, -741.927580466556, -595.489617124008, -455.328005089891, 
-324.566531012792, -205.857544197145, -96.4539405739839, -1.0750173767719, 
82.0691721155028, 152.970680515483, 212.971047472277, 261.923751042758, 
300.327657189533, 329.446097226422, 351.023532179166, 366.251419128175, 
375.990108907393, 384.172274537608, 394.208955820456, 405.950539805593, 
416.532237124774, 425.132283165001, 433.048730600746, 438.171181718392, 
440.083014253462, 437.604144264089, 432.476505507052, 422.787428565442, 
407.697814494421, 385.750064919533, 352.928603439545, 310.540866715098, 
262.464162060672, 204.351032872382, 138.257674476449, 65.1925708755549, 
-15.1680241320417, -106.06420161349, -208.581189282498, -321.999765933936, 
-446.840694822424, -584.81651581412, -738.182425323953, -901.677742185877, 
-1078.31088945848, -1268.65488536583, -1469.06078994092, -1681.06401993438, 
-1896.7661862979, -2115.71088710286, -2338.17701678636, -2557.58697576258, 
-2775.05586220863, -2990.41179706277, -3204.0052376082, -3417.14781097383, 
-3626.47349639516, -3836.4349133678, -4044.54284681476, -4247.55434687594, 
-4437.02929756109, -4614.344824739, -4779.87419665146, -4933.82488126002, 
-5079.00914623161, -5211.93401542355, -5328.78183222132, -5426.7917987003, 
-5506.90852092918, -5567.73378355936, -5609.10558462333, -5635.80329434447, 
-5645.81648370918, -5639.55166210656, -5616.39700415376, -5576.02491152366, 
-5517.7162202226, -5445.4437842119, -5356.14275227373, -5250.0652026307, 
-0.224278603471556, -0.21793912722257, -0.211038101188732, -0.20361614089325, 
-0.195675736148136, -0.187409621669494, -0.178792589872149, -0.169786198941663, 
-0.160375433366576, -0.150757474296419, -0.140878704475769, -0.130889210617458, 
-0.121011515133013, -0.111296014142324, -0.101885348138868, -0.0927659260171573, 
-0.0839050451029687, -0.0752411652228934, -0.0668087564186208, 
-0.0585907057837331, -0.0506736288402744, -0.0431034965499475, 
-0.0358840199477287, -0.0287366148498315, -0.0215341795620957, 
-0.0143715858807176, -0.00730309796792568, -0.000205921237221046, 
0.00711696169580722, 0.0147229302556374, 0.0225177770947958, 
0.0303807611369066, 0.0382915903227883, 0.046278927858667, 0.0543273216881545, 
0.0624576758951999, 0.0706121073294208, 0.0790838788736895, 0.0879704798542612, 
0.0972621435366969, 0.106958341104811, 0.116858063637083, 0.126918127058021, 
0.137061780955977, 0.14718810440044, 0.157222988029216, 0.167133518451601, 
0.176782424097257, 0.186055950675995, 0.194945602841141, 0.203531798786469, 
0.211912380917539, 0.219947747499046, 0.227645651658951, 0.234957919057855, 
0.241796439704924, 0.248275403688378, 0.254172435018941, 0.259539356269994, 
0.264205938197165, 0.268099516730634, 0.271313344232818, 0.273666251886118, 
0.275310445609425, 0.276179045383839, 0.276343625321845, 0.275840672817524, 
0.274697846188889, 0.273038352316448, 0.27097309953766, 0.268454823189127, 
0.265365007564034, 0.261817084570381, 0.257806498799417, 0.25361944930284, 
0.249189242803753, 0.244658645658669, 0.239951354240431, 0.235111901723678, 
0.230347656811995, 0.225676787410923, 0.220637849874789, 0.215149337220932, 
0.20928390674641, 0.203099218484636, 0.196934394652706, 0.190494137440489, 
0.183899154637363, 0.177233961801357, 0.170392551642972, 0.163187114517739, 
0.155564938052757, 0.147608427760111, 0.139422994942795, 0.130919784765311, 
0.122108410292548, 0.112917647096504, 0.103432305589372, 0.0936978133752054, 
0.0836213563084545, 0.0733681921621692, 0.0628953706587743, 0.0521396773957654, 
0.0410290599764203, 0.0295448341025506, 0.0178384175142782, 0.00609264338568227, 
-0.00571116574854495, -0.0173419515638791, -0.0285503650974099, 
-0.0391488757044998, -0.0489744953793763, -0.0580428094693614, 
-0.066271001803805, -0.0736181584380806, -0.0801297135935669, 
-0.0857932827956298, -0.090699622805027, -0.0947574749442496, 
-0.0979997153447955, -0.100410446647165, -0.101788046538881, 
-0.102241677845784, -0.10182331280871, -0.100641001911756, -0.0987771319906704, 
-0.0960611132825297, -0.0922851664046978, -0.0872538660675112, 
-0.0810115025369914, -0.0735963736174374, -0.0651289664086615, 
-0.0558307581373243, -0.0458634601125266, -0.0353724422917612, 
-0.0244578327359618, -0.0133130417931876, -0.0018940655946229, 
0.00984579197646199, 0.0218063035384817, 0.0339054925908491, 
0.0460070765957347, 0.0578891961308499, 0.0696953124307941, 0.0812788145948238, 
0.0924482980756366, 0.103262070927631, 0.113590392259976, 0.123306295869696, 
0.132280107365112, 0.140242269471844, 0.147281184035985, 0.153161700710092, 
0.157916670622724, 0.161499540145343, 0.164156503401218, 0.165758928423863, 
0.166374292511151, 0.166030674294947, 0.164540803212138, 0.161870563155884, 
0.158471648829654, 0.15460120026065, 0.150115061422393, 0.145063535838637, 
0.139347446531956, 0.132820764683364, 0.125505833628672, 0.117412641023661, 
0.108819560474744, 0.100020384403008, 0.0911465026978145, 0.0821620363641504, 
0.0731535357536163, 0.06431772350823, 0.0557043162722232, 0.0472926782698653, 
0.0391911356332193, 0.0314366993540891, 0.0242028519507888, 0.0176356278283022, 
0.0115834772604672, 0.00630759250326855, 0.0017076410299005, 
-0.00221588767456377, -0.00553696491450236, -0.00824796190438669, 
-0.0103761614590592, -0.0119914487734043, -0.0131900802719857, 
-0.01403699000366, -0.014579802178817, -0.0150349515152962, -0.0155911191766485, 
-0.0162402941863455, -0.0168254106850256, -0.0173006656502976, 
-0.0177372050598161, -0.018018855346312, -0.0181219549847047, 
-0.0179820422490882, -0.0176959413461575, -0.0171586477805863, 
-0.0163234759006901, -0.0151103748777411, -0.0132978704742445, 
-0.0109572764256571, -0.0083029319248714, -0.00509621568380698, 
-0.00145081712965422, 0.00257715518284318, 0.00700520507933514, 
0.0120127290323825, 0.0176592054112281, 0.0239052291163246, 0.0307792253327235, 
0.0383758807732662, 0.0468191711119487, 0.055819325223284, 0.0655421858873825, 
0.0760181622760344, 0.0870474349940645, 0.098714150426885, 0.110583155620702, 
0.122629458239557, 0.134868767598336, 0.146939088535869, 0.158902145919261, 
0.170748530752388, 0.182497583178962, 0.194221872919553, 0.205736308294385, 
0.217286571179057, 0.228736216500365, 0.239906883810634, 0.250333744508415, 
0.260092896007866, 0.26920568744783, 0.277683114815735, 0.285680005231502, 
0.293003819827896, 0.299444747968876, 0.304850841937518, 0.309274273511113, 
0.312637983308059, 0.314932880638235, 0.31642177357081, 0.316994347141166, 
0.316670953887601, 0.315418145934547, 0.313217824485354, 0.310030379198067, 
0.306074153521121, 0.301180999594048, 0.295365365900581), .Dim = c(255L, 
2L), .Dimnames = list(NULL, c("a_data", "b_data")), index = structure(c(17891, 
17892, 17893, 17896, 17898, 17899, 17900, 17903, 17904, 17905, 
17906, 17907, 17910, 17911, 17912, 17913, 17914, 17918, 17919, 
17920, 17921, 17924, 17925, 17926, 17927, 17928, 17931, 17932, 
17933, 17934, 17935, 17938, 17939, 17940, 17941, 17942, 17946, 
17947, 17948, 17949, 17952, 17953, 17954, 17955, 17956, 17959, 
17960, 17961, 17962, 17963, 17966, 17967, 17968, 17969, 17970, 
17973, 17974, 17975, 17976, 17977, 17980, 17981, 17982, 17983, 
17984, 17987, 17988, 17989, 17990, 17991, 17994, 17995, 17996, 
17997, 17998, 18001, 18002, 18003, 18004, 18008, 18009, 18010, 
18011, 18012, 18015, 18016, 18017, 18018, 18019, 18022, 18023, 
18024, 18025, 18026, 18029, 18030, 18031, 18032, 18033, 18036, 
18037, 18038, 18039, 18040, 18044, 18045, 18046, 18047, 18050, 
18051, 18052, 18053, 18054, 18057, 18058, 18059, 18060, 18061, 
18064, 18065, 18066, 18067, 18068, 18071, 18072, 18073, 18074, 
18075, 18078, 18079, 18080, 18082, 18085, 18086, 18087, 18088, 
18089, 18092, 18093, 18094, 18095, 18096, 18099, 18100, 18101, 
18102, 18103, 18106, 18107, 18108, 18109, 18110, 18113, 18114, 
18115, 18116, 18117, 18120, 18121, 18122, 18123, 18124, 18127, 
18128, 18129, 18130, 18131, 18134, 18135, 18136, 18137, 18138, 
18142, 18143, 18144, 18145, 18148, 18149, 18150, 18151, 18152, 
18155, 18156, 18157, 18158, 18159, 18162, 18163, 18164, 18165, 
18166, 18169, 18170, 18171, 18172, 18173, 18176, 18177, 18178, 
18179, 18180, 18183, 18184, 18185, 18186, 18187, 18190, 18191, 
18192, 18193, 18194, 18197, 18198, 18199, 18200, 18201, 18204, 
18205, 18206, 18207, 18208, 18211, 18212, 18213, 18214, 18215, 
18218, 18219, 18220, 18221, 18222, 18225, 18226, 18227, 18229, 
18232, 18233, 18234, 18235, 18236, 18239, 18240, 18241, 18242, 
18243, 18246, 18247, 18248, 18249, 18250, 18253, 18254, 18256, 
18257, 18260), class = "Date"), class = "zoo")

1 Ответ

0 голосов
/ 30 марта 2020

Вам необходимо преобразовать представление intercept + slope линии в четырехкоординатное представление.

Перехват (часть a) указывает, в какой точке оси y линия пересекает x = 0 баллов. И наклон (b часть) определяет, насколько линия увеличивается (или уменьшается), когда ось x изменяется на 1.

Имея эту информацию, если мы, скажем, хотим построить короткую линию с a=5 и b=0.1 в сегменте от x=2 до x=8 мы делаем следующее:

  1. выбираем любую точку x1 (в нашем примере это 2)
  2. выберите любую точку x2 (в нашем примере это 8)
  3. найдите точку y1 (когда x = 0, это 5 и поэтому при x = 2 это будет 5 + 2 * 0.1)
  4. find точка y2 (когда x = 0, это 5, и поэтому при x = 8 это будет 5 + 8 * 0,1)

С учетом всего этого, используя меньший пример:

abdata <- data.frame(a=1:10, b=0.1)

plot(1:10)
Map(abline, abdata$a, abdata$b, lty="dotted")

pic1

Для добавления коротких линий (добавлено красным на вершине предыдущего графика):

abdata$x1 <- seq(2,8,length.out=10)
abdata$x2 <- seq(2,8,length.out=10)+1
abdata$y1 <- abdata$a + abdata$x1 * abdata$b
abdata$y2 <- abdata$a + abdata$x2 * abdata$b
segments(abdata$x1, abdata$y1, abdata$x2, abdata$y2, col="red")

pipc2

Просто настройте значения в соответствии с тем, чего вы хотите достичь.

...