<p>The Python code below looks for close (&lt; 1°) matches at 1 day intervals for all of 2025 for the five naked eye planets.  You can see some of the lineups span multiple days, so might be a bit difficult to quantify exactly how often, but it is very obvious that such alignments are incredibly common, though mostly uninteresting due to the wide separation and possible obscuration by the Sun.  So, I have included code to only show matches that fall within a given field of view (change &quot;fov&lt;=360&quot; to something like &quot;fov&lt;=15&quot;).  Still most of the solutions involve Mercury and are either obscured or near the Sun.</p>
<p>While playing around, the most interesting cases I found, is two different lines within a 15° field of view.  Sat, Jup, Mer form a line, and Mars, Ven, and Jup form another.
<a href="https://i.sstatic.net/oTzfPBzA.png" rel="nofollow noreferrer"><img src="https://i.sstatic.net/oTzfPBzA.png" alt="pair of three planet lines" /></a></p>
<p>Below is the output of a run for 2025.  &quot;Sep&quot; is the angular distance between the two furthest planets, and &quot;Angle&quot; is the largest angle between the lines formed by each pair of planets.</p>
<pre><code>Date                Planets  Sep  Angle
2025-01-01 12:00:00 Me Ve Sa 84 0.66
2025-01-05 12:00:00 Me Ve Ju 166 0.89
2025-01-06 12:00:00 Me Ve Ju 165 0.28
2025-01-07 12:00:00 Me Ve Ju 163 0.23
2025-01-07 12:00:00 Me Ju Sa 163 0.75
2025-01-08 12:00:00 Me Ve Ju 162 0.67
2025-01-08 12:00:00 Me Ju Sa 162 0.43
2025-01-09 12:00:00 Me Ju Sa 160 0.17
2025-01-10 12:00:00 Me Ju Sa 159 0.04
2025-01-11 12:00:00 Me Ju Sa 157 0.22
2025-01-12 12:00:00 Me Ju Sa 156 0.38
2025-01-13 12:00:00 Me Ju Sa 154 0.52
2025-01-14 12:00:00 Me Ju Sa 153 0.64
2025-01-15 12:00:00 Me Ju Sa 151 0.74
2025-01-16 12:00:00 Me Ju Sa 150 0.83
2025-01-17 12:00:00 Me Ju Sa 148 0.91
2025-01-18 12:00:00 Me Ju Sa 146 0.97
2025-02-04 12:00:00 Me Ve Ma 157 0.69
2025-02-05 12:00:00 Me Ve Ma 155 0.07
2025-02-06 12:00:00 Me Ve Ma 153 0.78
2025-02-10 12:00:00 Me Ju Sa 108 0.94
2025-02-11 12:00:00 Me Ju Sa 106 0.81
2025-02-12 12:00:00 Me Ju Sa 104 0.66
2025-02-13 12:00:00 Me Ju Sa 103 0.47
2025-02-14 12:00:00 Me Ju Sa 101 0.23
2025-02-15 12:00:00 Me Ju Sa 99 0.06
2025-02-16 12:00:00 Me Ju Sa 97 0.46
2025-02-17 12:00:00 Me Ju Sa 96 0.99
2025-02-28 12:00:00 Me Ve Sa 21 0.47
2025-04-16 12:00:00 Me Ma Sa 123 0.07
2025-04-17 12:00:00 Me Ju Sa 82 0.63
2025-04-22 12:00:00 Me Ma Ju 116 0.99
2025-04-23 12:00:00 Me Ma Ju 115 0.84
2025-04-24 12:00:00 Me Ma Ju 115 0.69
2025-04-25 12:00:00 Me Ma Ju 114 0.56
2025-04-26 12:00:00 Me Ma Ju 113 0.44
2025-04-27 12:00:00 Me Ma Ju 113 0.34
2025-04-28 12:00:00 Me Ma Ju 112 0.24
2025-04-29 12:00:00 Me Ma Ju 111 0.16
2025-04-30 12:00:00 Me Ma Ju 110 0.08
2025-05-01 12:00:00 Me Ma Ju 109 0.02
2025-05-02 12:00:00 Me Ma Ju 108 0.03
2025-05-03 12:00:00 Me Ma Ju 107 0.07
2025-05-04 12:00:00 Me Ma Ju 106 0.11
2025-05-05 12:00:00 Me Ma Ju 105 0.14
2025-05-06 12:00:00 Me Ma Ju 104 0.16
2025-05-07 12:00:00 Me Ma Ju 103 0.17
2025-05-08 12:00:00 Me Ma Ju 102 0.17
2025-05-08 12:00:00 Ma Ju Sa 130 1.0
2025-05-09 12:00:00 Me Ma Ju 101 0.16
2025-05-09 12:00:00 Ma Ju Sa 130 0.95
2025-05-10 12:00:00 Me Ma Ju 100 0.14
2025-05-10 12:00:00 Ma Ju Sa 131 0.9
2025-05-11 12:00:00 Me Ma Ju 98 0.11
2025-05-11 12:00:00 Ma Ju Sa 131 0.84
2025-05-12 12:00:00 Me Ma Ju 97 0.06
2025-05-12 12:00:00 Ma Ju Sa 132 0.79
2025-05-13 12:00:00 Me Ma Ju 96 0.01
2025-05-13 12:00:00 Me Ju Sa 84 0.95
2025-05-13 12:00:00 Ma Ju Sa 132 0.74
2025-05-14 12:00:00 Me Ma Ju 95 0.04
2025-05-14 12:00:00 Me Ju Sa 85 0.74
2025-05-14 12:00:00 Ma Ju Sa 132 0.69
2025-05-15 12:00:00 Me Ma Ju 93 0.12
2025-05-15 12:00:00 Me Ma Sa 133 0.86
2025-05-15 12:00:00 Me Ju Sa 85 0.53
2025-05-15 12:00:00 Ma Ju Sa 133 0.64
2025-05-16 12:00:00 Me Ma Ju 92 0.21
2025-05-16 12:00:00 Me Ma Sa 133 0.66
2025-05-16 12:00:00 Me Ju Sa 85 0.31
2025-05-16 12:00:00 Ma Ju Sa 133 0.58
2025-05-17 12:00:00 Me Ma Ju 91 0.32
2025-05-17 12:00:00 Me Ma Sa 134 0.46
2025-05-17 12:00:00 Me Ju Sa 85 0.08
2025-05-17 12:00:00 Ma Ju Sa 134 0.53
2025-05-18 12:00:00 Me Ma Ju 89 0.45
2025-05-18 12:00:00 Me Ma Sa 134 0.27
2025-05-18 12:00:00 Me Ju Sa 85 0.14
2025-05-18 12:00:00 Ma Ju Sa 134 0.48
2025-05-19 12:00:00 Me Ve Ju 71 0.89
2025-05-19 12:00:00 Me Ma Ju 88 0.59
2025-05-19 12:00:00 Me Ma Sa 135 0.08
2025-05-19 12:00:00 Me Ju Sa 85 0.39
2025-05-19 12:00:00 Ma Ju Sa 135 0.43
2025-05-20 12:00:00 Me Ve Ju 71 0.36
2025-05-20 12:00:00 Me Ma Ju 86 0.75
2025-05-20 12:00:00 Me Ma Sa 135 0.1
2025-05-20 12:00:00 Me Ju Sa 85 0.64
2025-05-20 12:00:00 Ma Ju Sa 135 0.38
2025-05-21 12:00:00 Me Ve Ma 120 0.64
2025-05-21 12:00:00 Me Ve Ju 70 0.16
2025-05-21 12:00:00 Me Ma Ju 85 0.94
2025-05-21 12:00:00 Me Ma Sa 135 0.27
2025-05-21 12:00:00 Me Ju Sa 85 0.92
2025-05-21 12:00:00 Ve Ma Ju 120 0.92
2025-05-21 12:00:00 Ma Ju Sa 135 0.32
2025-05-22 12:00:00 Me Ve Ma 119 0.22
2025-05-22 12:00:00 Me Ve Ju 69 0.69
2025-05-22 12:00:00 Me Ma Sa 136 0.45
2025-05-22 12:00:00 Ve Ma Ju 119 0.77
2025-05-22 12:00:00 Ma Ju Sa 136 0.27
2025-05-23 12:00:00 Me Ve Ma 119 0.16
2025-05-23 12:00:00 Me Ve Sa 54 0.78
2025-05-23 12:00:00 Me Ma Sa 136 0.62
2025-05-23 12:00:00 Ve Ma Ju 119 0.63
2025-05-23 12:00:00 Ma Ju Sa 136 0.22
2025-05-24 12:00:00 Me Ve Ma 119 0.53
2025-05-24 12:00:00 Me Ve Sa 56 0.18
2025-05-24 12:00:00 Me Ma Sa 137 0.78
2025-05-24 12:00:00 Ve Ma Ju 119 0.49
2025-05-24 12:00:00 Ve Ma Sa 137 0.92
2025-05-24 12:00:00 Ma Ju Sa 137 0.17
2025-05-25 12:00:00 Me Ve Ma 118 0.88
2025-05-25 12:00:00 Me Ve Sa 58 0.35
2025-05-25 12:00:00 Me Ma Sa 137 0.94
2025-05-25 12:00:00 Ve Ma Ju 118 0.36
2025-05-25 12:00:00 Ve Ma Sa 137 0.67
2025-05-25 12:00:00 Ve Ju Sa 86 0.83
2025-05-25 12:00:00 Ma Ju Sa 137 0.11
2025-05-26 12:00:00 Me Ve Sa 60 0.84
2025-05-26 12:00:00 Ve Ma Ju 118 0.24
2025-05-26 12:00:00 Ve Ma Sa 138 0.46
2025-05-26 12:00:00 Ve Ju Sa 86 0.55
2025-05-26 12:00:00 Ma Ju Sa 138 0.06
2025-05-27 12:00:00 Ve Ma Ju 118 0.12
2025-05-27 12:00:00 Ve Ma Sa 138 0.27
2025-05-27 12:00:00 Ve Ju Sa 86 0.31
2025-05-27 12:00:00 Ma Ju Sa 138 0.01
2025-05-28 12:00:00 Ve Ma Ju 117 0.0
2025-05-28 12:00:00 Ve Ma Sa 138 0.11
2025-05-28 12:00:00 Ve Ju Sa 86 0.09
2025-05-28 12:00:00 Ma Ju Sa 138 0.04
2025-05-29 12:00:00 Ve Ma Ju 117 0.1
2025-05-29 12:00:00 Ve Ma Sa 139 0.02
2025-05-29 12:00:00 Ve Ju Sa 87 0.1
2025-05-29 12:00:00 Ma Ju Sa 139 0.09
2025-05-30 12:00:00 Ve Ma Ju 116 0.21
2025-05-30 12:00:00 Ve Ma Sa 139 0.13
2025-05-30 12:00:00 Ve Ju Sa 87 0.28
2025-05-30 12:00:00 Ma Ju Sa 139 0.15
2025-05-31 12:00:00 Ve Ma Ju 116 0.31
2025-05-31 12:00:00 Ve Ma Sa 140 0.23
2025-05-31 12:00:00 Ve Ju Sa 87 0.45
2025-05-31 12:00:00 Ma Ju Sa 140 0.2
2025-06-01 12:00:00 Ve Ma Ju 115 0.41
2025-06-01 12:00:00 Ve Ma Sa 140 0.32
2025-06-01 12:00:00 Ve Ju Sa 87 0.6
2025-06-01 12:00:00 Ma Ju Sa 140 0.26
2025-06-02 12:00:00 Ve Ma Ju 115 0.52
2025-06-02 12:00:00 Ve Ma Sa 141 0.39
2025-06-02 12:00:00 Ve Ju Sa 87 0.73
2025-06-02 12:00:00 Ma Ju Sa 141 0.32
2025-06-03 12:00:00 Ve Ma Ju 115 0.61
2025-06-03 12:00:00 Ve Ma Sa 141 0.44
2025-06-03 12:00:00 Ve Ju Sa 87 0.85
2025-06-03 12:00:00 Ma Ju Sa 141 0.37
2025-06-04 12:00:00 Ve Ma Ju 114 0.71
2025-06-04 12:00:00 Ve Ma Sa 142 0.48
2025-06-04 12:00:00 Ve Ju Sa 88 0.96
2025-06-04 12:00:00 Ma Ju Sa 142 0.43
2025-06-05 12:00:00 Ve Ma Ju 114 0.81
2025-06-05 12:00:00 Ve Ma Sa 142 0.52
2025-06-05 12:00:00 Ma Ju Sa 142 0.49
2025-06-06 12:00:00 Ve Ma Ju 113 0.9
2025-06-06 12:00:00 Ve Ma Sa 143 0.54
2025-06-06 12:00:00 Ma Ju Sa 143 0.55
2025-06-07 12:00:00 Ve Ma Ju 113 0.99
2025-06-07 12:00:00 Ve Ma Sa 143 0.55
2025-06-07 12:00:00 Ma Ju Sa 143 0.61
2025-06-08 12:00:00 Ve Ma Sa 144 0.55
2025-06-08 12:00:00 Ma Ju Sa 144 0.67
2025-06-09 12:00:00 Ve Ma Sa 144 0.55
2025-06-09 12:00:00 Ma Ju Sa 144 0.74
2025-06-10 12:00:00 Ve Ma Sa 145 0.54
2025-06-10 12:00:00 Ma Ju Sa 145 0.8
2025-06-11 12:00:00 Ve Ma Sa 145 0.52
2025-06-11 12:00:00 Ma Ju Sa 145 0.86
2025-06-12 12:00:00 Ve Ma Sa 146 0.49
2025-06-12 12:00:00 Ma Ju Sa 146 0.93
2025-06-13 12:00:00 Ve Ma Sa 146 0.46
2025-06-13 12:00:00 Ma Ju Sa 146 1.0
2025-06-14 12:00:00 Ve Ma Sa 147 0.43
2025-06-15 12:00:00 Ve Ma Sa 147 0.38
2025-06-16 12:00:00 Ve Ma Sa 148 0.34
2025-06-17 12:00:00 Ve Ma Sa 148 0.28
2025-06-18 12:00:00 Ve Ma Sa 149 0.22
2025-06-19 12:00:00 Ve Ma Sa 149 0.16
2025-06-20 12:00:00 Ve Ma Sa 150 0.09
2025-06-21 12:00:00 Ve Ma Sa 150 0.02
2025-06-22 12:00:00 Ve Ma Sa 151 0.04
2025-06-23 12:00:00 Me Ve Ju 67 0.86
2025-06-23 12:00:00 Ve Ma Sa 151 0.13
2025-06-24 12:00:00 Me Ve Ju 68 0.33
2025-06-24 12:00:00 Ve Ma Sa 152 0.21
2025-06-25 12:00:00 Me Ve Ju 68 0.17
2025-06-25 12:00:00 Ve Ma Sa 152 0.3
2025-06-26 12:00:00 Me Ve Ju 68 0.65
2025-06-26 12:00:00 Ve Ma Sa 153 0.4
2025-06-27 12:00:00 Me Ju Sa 119 0.56
2025-06-27 12:00:00 Ve Ma Sa 154 0.5
2025-06-28 12:00:00 Me Ju Sa 120 0.1
2025-06-28 12:00:00 Ve Ma Sa 154 0.61
2025-06-29 12:00:00 Me Ju Sa 121 0.36
2025-06-29 12:00:00 Ve Ma Sa 155 0.72
2025-06-30 12:00:00 Me Ve Sa 122 0.96
2025-06-30 12:00:00 Me Ma Ju 62 0.54
2025-06-30 12:00:00 Me Ju Sa 122 0.82
2025-06-30 12:00:00 Ve Ma Sa 155 0.83
2025-07-01 12:00:00 Me Ve Sa 123 0.7
2025-07-01 12:00:00 Me Ma Ju 63 0.04
2025-07-01 12:00:00 Ve Ma Sa 156 0.96
2025-07-02 12:00:00 Me Ve Sa 124 0.43
2025-07-02 12:00:00 Me Ma Ju 63 0.63
2025-07-03 12:00:00 Me Ve Sa 125 0.14
2025-07-04 12:00:00 Me Ve Ma 99 0.73
2025-07-04 12:00:00 Me Ve Sa 126 0.15
2025-07-05 12:00:00 Me Ve Ma 99 0.3
2025-07-05 12:00:00 Me Ve Sa 127 0.47
2025-07-06 12:00:00 Me Ve Ma 98 0.14
2025-07-06 12:00:00 Me Ve Sa 128 0.8
2025-07-07 12:00:00 Me Ve Ma 98 0.6
2025-07-08 12:00:00 Me Ma Sa 160 0.78
2025-07-09 12:00:00 Me Ma Sa 160 0.51
2025-07-10 12:00:00 Me Ma Sa 161 0.25
2025-07-11 12:00:00 Me Ma Sa 161 0.0
2025-07-12 12:00:00 Me Ma Sa 162 0.21
2025-07-13 12:00:00 Me Ma Sa 163 0.41
2025-07-14 12:00:00 Me Ma Sa 163 0.58
2025-07-15 12:00:00 Me Ma Sa 164 0.7
2025-07-16 12:00:00 Me Ma Sa 164 0.78
2025-07-17 12:00:00 Me Ma Sa 165 0.8
2025-07-18 12:00:00 Me Ma Sa 166 0.77
2025-07-19 12:00:00 Me Ma Sa 166 0.66
2025-07-20 12:00:00 Me Ma Sa 167 0.48
2025-07-21 12:00:00 Me Ma Sa 167 0.22
2025-07-22 12:00:00 Me Ma Sa 168 0.12
2025-07-23 12:00:00 Me Ma Sa 169 0.58
2025-08-21 12:00:00 Me Ve Ma 74 0.2
2025-08-22 12:00:00 Me Ve Ma 73 0.63
2025-08-22 12:00:00 Me Ma Ju 83 0.52
2025-08-23 12:00:00 Me Ma Ju 84 0.09
2025-08-24 12:00:00 Me Ve Sa 133 0.76
2025-08-24 12:00:00 Me Ma Ju 84 0.63
2025-08-25 12:00:00 Me Ve Sa 135 0.16
2025-08-26 12:00:00 Me Ve Sa 136 0.34
2025-08-26 12:00:00 Ve Ma Ju 85 0.83
2025-08-27 12:00:00 Me Ve Sa 138 0.76
2025-08-27 12:00:00 Ve Ma Ju 85 0.59
2025-08-28 12:00:00 Me Ju Sa 140 0.84
2025-08-28 12:00:00 Ve Ma Ju 86 0.37
2025-08-29 12:00:00 Me Ju Sa 142 0.63
2025-08-29 12:00:00 Ve Ma Ju 86 0.17
2025-08-30 12:00:00 Me Ju Sa 144 0.47
2025-08-30 12:00:00 Ve Ma Ju 87 0.0
2025-08-31 12:00:00 Me Ju Sa 146 0.36
2025-08-31 12:00:00 Ve Ma Ju 87 0.15
2025-09-01 12:00:00 Me Ju Sa 148 0.29
2025-09-01 12:00:00 Ve Ma Ju 88 0.29
2025-09-02 12:00:00 Me Ju Sa 149 0.27
2025-09-02 12:00:00 Ve Ma Ju 88 0.42
2025-09-03 12:00:00 Me Ju Sa 151 0.29
2025-09-03 12:00:00 Ve Ma Ju 89 0.54
2025-09-04 12:00:00 Me Ju Sa 153 0.36
2025-09-04 12:00:00 Ve Ma Ju 89 0.65
2025-09-05 12:00:00 Me Ju Sa 155 0.47
2025-09-05 12:00:00 Ve Ma Ju 90 0.76
2025-09-06 12:00:00 Me Ve Sa 158 0.89
2025-09-06 12:00:00 Me Ju Sa 158 0.63
2025-09-06 12:00:00 Ve Ma Ju 90 0.85
2025-09-07 12:00:00 Me Ve Sa 160 0.54
2025-09-07 12:00:00 Me Ju Sa 160 0.86
2025-09-07 12:00:00 Ve Ma Ju 91 0.94
2025-09-08 12:00:00 Me Ve Sa 162 0.1
2025-09-09 12:00:00 Me Ve Sa 164 0.43
2025-09-13 12:00:00 Me Ve Ju 61 0.95
2025-09-14 12:00:00 Me Ve Ju 62 0.7
2025-09-15 12:00:00 Me Ve Ju 64 0.46
2025-09-16 12:00:00 Me Ve Ju 66 0.21
2025-09-17 12:00:00 Me Ve Ju 67 0.02
2025-09-18 12:00:00 Me Ve Ju 69 0.25
2025-09-19 12:00:00 Me Ve Ju 71 0.49
2025-09-20 12:00:00 Me Ve Ju 72 0.72
2025-09-21 12:00:00 Me Ve Ju 74 0.94
2025-09-24 12:00:00 Me Ve Ma 55 0.68
2025-09-25 12:00:00 Me Ve Ma 54 0.29
2025-09-26 12:00:00 Me Ve Ma 54 0.1
2025-09-27 12:00:00 Me Ve Ma 53 0.54
2025-09-28 12:00:00 Me Ma Ju 102 0.81
2025-09-29 12:00:00 Me Ma Ju 102 0.47
2025-09-30 12:00:00 Me Ma Ju 103 0.09
2025-10-01 12:00:00 Me Ma Ju 103 0.33
2025-10-02 12:00:00 Me Ma Ju 104 0.83
2025-10-19 12:00:00 Me Ve Sa 169 0.32
2025-10-20 12:00:00 Me Ve Sa 168 0.37
2025-10-21 12:00:00 Me Ve Sa 166 0.94
2025-10-25 12:00:00 Ve Ma Sa 161 0.81
2025-10-26 12:00:00 Ve Ma Sa 160 0.59
2025-10-27 12:00:00 Ve Ma Sa 159 0.4
2025-10-28 12:00:00 Ve Ma Sa 157 0.23
2025-10-29 12:00:00 Ve Ma Sa 156 0.07
2025-10-30 12:00:00 Ve Ma Sa 155 0.06
2025-10-31 12:00:00 Ve Ma Sa 153 0.18
2025-11-01 12:00:00 Ve Ma Sa 152 0.3
2025-11-02 12:00:00 Ve Ma Sa 151 0.4
2025-11-03 12:00:00 Ve Ma Sa 149 0.5
2025-11-04 12:00:00 Ve Ma Sa 148 0.59
2025-11-05 12:00:00 Ve Ma Sa 147 0.67
2025-11-06 12:00:00 Ve Ma Sa 146 0.74
2025-11-07 12:00:00 Ve Ma Sa 144 0.81
2025-11-08 12:00:00 Ve Ma Sa 143 0.88
2025-11-09 12:00:00 Ve Ma Sa 142 0.94
2025-11-10 12:00:00 Ve Ma Sa 140 1.0
2025-11-18 12:00:00 Me Ma Sa 114 0.11
2025-11-19 12:00:00 Me Ve Ma 25 0.48
2025-11-20 12:00:00 Me Ve Sa 128 0.11
2025-11-21 12:00:00 Me Ve Ju 121 0.11
2025-11-23 12:00:00 Me Ju Sa 120 0.87
2025-11-24 12:00:00 Me Ju Sa 121 0.6
2025-11-25 12:00:00 Me Ju Sa 122 0.36
2025-11-26 12:00:00 Me Ju Sa 123 0.15
2025-11-27 12:00:00 Me Ju Sa 124 0.02
2025-11-28 12:00:00 Me Ju Sa 124 0.16
2025-11-29 12:00:00 Me Ju Sa 124 0.27
2025-11-30 12:00:00 Me Ju Sa 124 0.35
2025-12-01 12:00:00 Me Ju Sa 124 0.4
2025-12-02 12:00:00 Me Ju Sa 123 0.42
2025-12-03 12:00:00 Me Ju Sa 123 0.42
2025-12-04 12:00:00 Me Ju Sa 122 0.41
2025-12-05 12:00:00 Me Ju Sa 122 0.37
2025-12-06 12:00:00 Me Ju Sa 121 0.33
2025-12-07 12:00:00 Me Ju Sa 120 0.28
2025-12-08 12:00:00 Me Ju Sa 122 0.22
2025-12-09 12:00:00 Me Ju Sa 123 0.15
2025-12-10 12:00:00 Me Ju Sa 124 0.07
2025-12-11 12:00:00 Me Ju Sa 125 0.0
2025-12-12 12:00:00 Me Ju Sa 127 0.08
2025-12-13 12:00:00 Me Ju Sa 128 0.18
2025-12-14 12:00:00 Me Ju Sa 129 0.27
2025-12-15 12:00:00 Me Ju Sa 131 0.38
2025-12-16 12:00:00 Me Ve Ma 25 0.67
2025-12-16 12:00:00 Me Ju Sa 132 0.48
2025-12-17 12:00:00 Me Ve Ma 24 0.3
2025-12-17 12:00:00 Me Ju Sa 134 0.6
2025-12-18 12:00:00 Me Ve Ma 23 0.07
2025-12-18 12:00:00 Me Ju Sa 135 0.71
2025-12-19 12:00:00 Me Ve Ma 23 0.46
2025-12-19 12:00:00 Me Ju Sa 137 0.84
2025-12-20 12:00:00 Me Ve Ma 22 0.85
2025-12-20 12:00:00 Me Ju Sa 138 0.97
2025-12-22 12:00:00 Me Ve Sa 101 0.91
2025-12-23 12:00:00 Me Ve Sa 99 0.56
2025-12-24 12:00:00 Me Ve Sa 98 0.2
2025-12-25 12:00:00 Me Ve Sa 96 0.15
2025-12-25 12:00:00 Me Ma Sa 96 0.93
2025-12-26 12:00:00 Me Ve Sa 95 0.51
2025-12-26 12:00:00 Me Ma Sa 95 0.69
2025-12-27 12:00:00 Me Ve Sa 94 0.88
2025-12-27 12:00:00 Me Ma Sa 94 0.44
2025-12-28 12:00:00 Me Ma Sa 92 0.18
2025-12-29 12:00:00 Me Ma Sa 91 0.09
2025-12-30 12:00:00 Me Ma Sa 89 0.39
2025-12-31 12:00:00 Me Ve Ju 167 0.86
2025-12-31 12:00:00 Me Ma Sa 88 0.71
</code></pre>
<p>The code below does not use great circles, instead defines the planes connecting each pair of three planets and computes the largest angle between them.  After writing the code, I remembered Meeus has a similar algorithm in Astronomical Algorithms, but using great circles.</p>
<p>The code is written in Python, and the only external dependency is vsop87_full.py which is part of the <a href="https://github.com/gmiller123456/vsop87-multilang" rel="nofollow noreferrer">VSOP87 Multilang</a> project, just download the <a href="https://github.com/gmiller123456/vsop87-multilang/blob/master/Languages/Python/vsop87a_full.py" rel="nofollow noreferrer">vsop87_full.py</a> file and place it in the same directory.</p>
<p>Code:</p>
<pre><code>#!/usr/bin/python
from vsop87a_full import *
import math
from datetime import datetime

#Finds planets in a straight line and the field of view required
#Greg Miller gmiller@gregmiller.net https://celestialprogramming.com
#Released as public domain

rad=math.pi/180.0

def jd2et(jd):
    return (jd - 2451545.0) / 365250.0

def dateFromJD(jd):
    unixtime=(jd-2440587.5)*86400
    return datetime.utcfromtimestamp(unixtime).strftime('%Y-%m-%d %H:%M:%S')

def norm(v): #Normalize vector
    l=math.sqrt(v[0]*v[0] + v[1]*v[1] + v[2]*v[2])
    u=[0,0,0]
    u[0]=v[0]/l
    u[1]=v[1]/l
    u[2]=v[2]/l
    return u

def dot(u,v): #Vector dot product
    return u[0]*v[0] + u[1]*v[1] + u[2]*v[2]

def cross(a,b): #Vector cross product
    r=[0,0,0]
    r[0]=a[1]*b[2] - a[2]*b[1]
    r[1]=a[2]*b[0] - a[0]*b[2]
    r[2]=a[0]*b[1] - a[1]*b[0]
    return r

def sub(a,b): #Subtract vector b from a
    r=[0,0,0]
    r[0]=a[0]-b[0]
    r[1]=a[1]-b[1]
    r[2]=a[2]-b[2]
    return r

def getPlanets(jd):
    planets=[0,0,0,0,0]
    t=jd2et(jd)
    earth=vsop87a_full.getEarth(t)
    planets[0]=norm(sub(vsop87a_full.getMercury(t),earth))
    planets[1]=norm(sub(vsop87a_full.getVenus(t),earth))
    planets[2]=norm(sub(vsop87a_full.getMars(t),earth))
    planets[3]=norm(sub(vsop87a_full.getJupiter(t),earth))
    planets[4]=norm(sub(vsop87a_full.getSaturn(t),earth))
    return planets

def fixangle(a):
    if(a&gt;90): return 180-a
    return a

def getMaxAngleBetweenPlanes(plane1,plane2,plane3):
    angle1=fixangle(abs(math.acos(dot(plane1,plane2))/rad))
    angle2=fixangle(abs(math.acos(dot(plane1,plane3))/rad))
    angle3=fixangle(abs(math.acos(dot(plane2,plane3))/rad))
    angle=angle1
    if(angle2&gt;angle): angle=angle2
    if(angle3&gt;angle): angle=angle3
    return angle

def getFieldOfView(p): #approx FOV, only considers greatest separation
    start=0
    fov=0
    while start&lt;len(p)-1:
        for i in range(start+1,len(p)):
            angle=math.acos(dot(p[start],p[i]))
            if(angle&gt;fov): fov=angle
        start+=1
    return fov/rad

def checkJD(jd):
    p=getPlanets(jd)
    for i in range(0,len(p)):
        for j in range(i+1,len(p)):
            plane1=norm(cross(p[i],p[j]))
            for k in range(j+1,len(p)):
                plane2=norm(cross(p[i],p[k]))
                plane3=norm(cross(p[j],p[k]))
                angle=math.floor(getMaxAngleBetweenPlanes(plane1,plane2,plane3)*100)/100.0
                fov=math.floor(getFieldOfView([p[i],p[j],p[k]]))
                if(angle&lt;=1 and fov&lt;=360): print(dateFromJD(jd),names[i],names[j],names[k],fov,angle)

j2000=2451545
startJD=2460677

names=[&quot;Me&quot;,&quot;Ve&quot;,&quot;Ma&quot;,&quot;Ju&quot;,&quot;Sa&quot;]
for i in range(365):
    checkJD(startJD+i)
</code></pre>

CC BY-SA 4.0
2024-12-29T16:17:34.380Z
Only exact alignments are interesting, so can you look for sign changing from one day to the next?  Or going from less than 180 to greater?
eshaya
CC BY-SA 4.0
2024-12-29T16:46:05.017Z
@eshaya IMHO, narrow field alignments are more interesting even if they're not at all straight. If you believe otherwise, you are free to make the changes to the program and post that as your answer.  For those that like close alignments, check out Sept 8, 2040, all five planets, and the Moon in a 10&deg; field of view.
Greg Miller
CC BY-SA 4.0
2024-12-29T06:37:57.590Z
2024-12-29T06:37:57.590Z
Greg Miller
<p>All of the planets are always approximately in a straight line in the sky, because they all lie close to the <a href="https://en.wikipedia.org/wiki/Ecliptic" rel="nofollow noreferrer">plane of the ecliptic</a>. Since the earth is in that plane by definition, everything else in the same plane forms a straight line.</p>

CC BY-SA 4.0
2024-12-28T16:05:33.637Z
This video of edge on view from that Wikipedia page says it well.  Mercury, Venus, Earth, Mars, and Jupiter are present.  https://en.m.wikipedia.org/wiki/Ecliptic#/media/File%3AEcliptic_plane_side_view.gif
eshaya
CC BY-SA 4.0
2024-12-28T04:27:59.397Z
2024-12-28T04:27:59.397Z
Mark Foskey
<p>This question is inspired by my misunderstanding of <a href="https://en.wikipedia.org/wiki/Syzygy_(astronomy)" rel="nofollow noreferrer">syzygy</a> description as &quot;three celestial bodies forming a straight line&quot;</p>
<p>Usually, this means straight line in 3D, causing occlusion and is somewhat rare</p>
<p>But my version is much easier and faaar more common (I think) - look up into the sky and check whether 3 planets lie on a <a href="https://en.wikipedia.org/wiki/Great_circle" rel="nofollow noreferrer">Great Circle</a></p>
<p>How often does that happen?</p>

CC BY-SA 4.0
2024-12-25T05:08:37.003Z
You can use JPL Horizons to generate positions each day for 1000 years and count how many are close enough.  I doubt "exact" ever happens.
Greg Miller
CC BY-SA 4.0
2024-12-25T05:20:28.253Z
@GregMiller just by the very 2D nature of the problem, if you draw a line (great circle) through 2 planets, and then the 3rd one was at some point on one side and then moved to the other - it crossed the line in between these moments.
NooneAtAll3
CC BY-SA 4.0
2024-12-25T06:38:26.187Z
yet nature is 3D. So a real 2D problem hardly ever occurs when 3 bodies are involved (only to varying degrees of accuracy)
planetmaker
CC BY-SA 4.0
2024-12-25T12:11:10.853Z
[Syzygies involving the Earth, moon and sun is pretty common and happen every 14.5 days](https://weather.com/news/weather/news/2023-03-14-weather-words-syzygy)
Nilay Ghosh
CC BY-SA 4.0
2024-12-25T13:14:59.650Z
@planetmaker 2D problem is a projection on the sky sphere, it would happen all the time. If you locate yourself onto the Earth's north pole, "my syzygy" occures every time 2 planets have the same sky longitude - because Earth would be on the south sky pole and meridian is part of great circle
NooneAtAll3
CC BY-SA 4.0
2024-12-25T13:16:08.870Z
Tho using Earth feels kinda like cheating
NooneAtAll3
CC BY-SA 4.0
2024-12-25T13:27:31.370Z
@NilayGhosh yep, that article is using exactly the "my syzygy" that I'm asking about - and not the "real" 3D one that wikipedia talks about. Tho, since Earth is rotating, you can even say that Earth's center intersects Sun-Moon line twice per day for most of locations, most of the time (it's possible that Sun and Moon get close to sky equator and you being on high latitude would put Earth rotation's circle of latitude out of reach)
NooneAtAll3
CC BY-SA 4.0
2024-12-25T13:34:41.230Z
so you don't want to consider the declination of the objects you are looking for in the alignment?
planetmaker
CC BY-SA 4.0
2024-12-25T14:54:11.443Z
Always.  All 8 planets are in the ecliptic plane which is a great circle on the surface of the celestial sphere.
eshaya
CC BY-SA 4.0
2024-12-25T15:16:40.650Z
@eshaya look up any planet on wikipedia, and check "inclination". Planets aren't on the exact same plane - they differ by several degrees. E.g. Mercury is whole 7 degrees off
NooneAtAll3
CC BY-SA 4.0
2024-12-25T15:18:58.383Z
@planetmaker I'm looking for events when 3 objects in the sky are in a "straight line" - great circle. Chosen coordinate system (where poles are located, where prime meridian is) is independent of that
NooneAtAll3
CC BY-SA 4.0
2024-12-25T17:49:46.733Z
great circle in which coordinate system?
planetmaker
CC BY-SA 4.0
2024-12-25T19:59:03.397Z
@planetmaker you mean from whose POV? from me, observer on Earth
NooneAtAll3
CC BY-SA 4.0
2024-12-25T20:32:41.420Z
My intuition says there are moments of exact 3 planet alignments of this kind about every 3 days.  But I am too lazy to work it out exactly.  One can cheat by just thinking about Mercury.  I will let others prove me wrong.
eshaya
CC BY-SA 4.0
2024-12-27T04:48:15.330Z
Sounds like a question that may be answered in Jean Meeus' "Mathematical Astronomy Morsels" series (which I do not have). But if someone wanted to do the calculations, are you @NooneAtAll3 interested in only the planets Mercury through Saturn, or include Uranus and Neptune (generally not naked eye)? Also, any restriction on the separation of the 3 planets? Some alignments may not be visible or exciting. For example, 3 planets 120 degrees apart from each other would only excite a mathematician, not the general public.
JohnHoltz
CC BY-SA 4.0
2024-12-27T15:55:39.343Z
@JohnHoltz This event would only excite a mathematician because, as I mentioned, to the human eye the planets are  in a plane.  We only notice it is not exactly so as they pass each other.
eshaya
CC BY-SA 4.0
2024-12-28T22:03:05.330Z
Turns out to be incredibly common, though most will be so spread out they won't be an interesting sight.  I wrote a program to find occurrences of alignments less than 1 deg of the five naked eye planets at noon each day, and almost every day has a match.  Since they all lie in the ecliptic, as they spread out across they sky the angles get pretty small.  Although exact matches will exist, finding them might be more work than I plan on putting in to it, so I might post the program as an answer to a new question if I can come up with criteria for what makes a match interesting.
Greg Miller
<alignment>
How often do 3 planets form a straight line in the sky?
NooneAtAll3
# How often do 3 planets form a straight line in the sky?

(Asked by: username_0 on 2024-12-25)

This question is inspired by my misunderstanding of [syzygy](https://en.wikipedia.org/wiki/Syzygy_(astronomy)) description as "three celestial bodies forming a straight line"

Usually, this means straight line in 3D, causing occlusion and is somewhat rare

But my version is much easier and faaar more common (I think) - look up into the sky and check whether 3 planets lie on a [Great Circle](https://en.wikipedia.org/wiki/Great_circle)

How often does that happen?

**Tags:** alignment
> **Comments:**
> **username_1**: You can use JPL Horizons to generate positions each day for 1000 years and count how many are close enough.  I doubt "exact" ever happens.  
> **username_0**: @GregMiller just by the very 2D nature of the problem, if you draw a line (great circle) through 2 planets, and then the 3rd one was at some point on one side and then moved to the other - it crossed the line in between these moments.  
> **username_2**: yet nature is 3D. So a real 2D problem hardly ever occurs when 3 bodies are involved (only to varying degrees of accuracy)  
> **username_3**: [Syzygies involving the Earth, moon and sun is pretty common and happen every 14.5 days](https://weather.com/news/weather/news/2023-03-14-weather-words-syzygy)  
> **username_0**: @planetmaker 2D problem is a projection on the sky sphere, it would happen all the time. If you locate yourself onto the Earth's north pole, "my syzygy" occures every time 2 planets have the same sky longitude - because Earth would be on the south sky pole and meridian is part of great circle  
> **username_0**: Tho using Earth feels kinda like cheating  
> **username_0**: @NilayGhosh yep, that article is using exactly the "my syzygy" that I'm asking about - and not the "real" 3D one that wikipedia talks about. Tho, since Earth is rotating, you can even say that Earth's center intersects Sun-Moon line twice per day for most of locations, most of the time (it's possible that Sun and Moon get close to sky equator and you being on high latitude would put Earth rotation's circle of latitude out of reach)  
> **username_2**: so you don't want to consider the declination of the objects you are looking for in the alignment?  
> **username_4**: Always.  All 8 planets are in the ecliptic plane which is a great circle on the surface of the celestial sphere.  
> **username_0**: @eshaya look up any planet on wikipedia, and check "inclination". Planets aren't on the exact same plane - they differ by several degrees. E.g. Mercury is whole 7 degrees off  
> **username_0**: @planetmaker I'm looking for events when 3 objects in the sky are in a "straight line" - great circle. Chosen coordinate system (where poles are located, where prime meridian is) is independent of that  
> **username_2**: great circle in which coordinate system?  
> **username_0**: @planetmaker you mean from whose POV? from me, observer on Earth  
> **username_4**: My intuition says there are moments of exact 3 planet alignments of this kind about every 3 days.  But I am too lazy to work it out exactly.  One can cheat by just thinking about Mercury.  I will let others prove me wrong.  
> **username_5**: Sounds like a question that may be answered in Jean Meeus' "Mathematical Astronomy Morsels" series (which I do not have). But if someone wanted to do the calculations, are you @NooneAtAll3 interested in only the planets Mercury through Saturn, or include Uranus and Neptune (generally not naked eye)? Also, any restriction on the separation of the 3 planets? Some alignments may not be visible or exciting. For example, 3 planets 120 degrees apart from each other would only excite a mathematician, not the general public.  
> **username_4**: @JohnHoltz This event would only excite a mathematician because, as I mentioned, to the human eye the planets are  in a plane.  We only notice it is not exactly so as they pass each other.  
> **username_1**: Turns out to be incredibly common, though most will be so spread out they won't be an interesting sight.  I wrote a program to find occurrences of alignments less than 1 deg of the five naked eye planets at noon each day, and almost every day has a match.  Since they all lie in the ecliptic, as they spread out across they sky the angles get pretty small.  Although exact matches will exist, finding them might be more work than I plan on putting in to it, so I might post the program as an answer to a new question if I can come up with criteria for what makes a match interesting.  

---

## 2 answers

### Answer by username_1 on 2024-12-29. Score: 4 | Accepted answer

The Python code below looks for close (< 1°) matches at 1 day intervals for all of 2025 for the five naked eye planets.  You can see some of the lineups span multiple days, so might be a bit difficult to quantify exactly how often, but it is very obvious that such alignments are incredibly common, though mostly uninteresting due to the wide separation and possible obscuration by the Sun.  So, I have included code to only show matches that fall within a given field of view (change "fov<=360" to something like "fov<=15").  Still most of the solutions involve Mercury and are either obscured or near the Sun.
While playing around, the most interesting cases I found, is two different lines within a 15° field of view.  Sat, Jup, Mer form a line, and Mars, Ven, and Jup form another.

Below is the output of a run for 2025.  "Sep" is the angular distance between the two furthest planets, and "Angle" is the largest angle between the lines formed by each pair of planets.
Date                Planets  Sep  Angle
2025-01-01 12:00:00 Me Ve Sa 84 0.66
2025-01-05 12:00:00 Me Ve Ju 166 0.89
2025-01-06 12:00:00 Me Ve Ju 165 0.28
2025-01-07 12:00:00 Me Ve Ju 163 0.23
2025-01-07 12:00:00 Me Ju Sa 163 0.75
2025-01-08 12:00:00 Me Ve Ju 162 0.67
2025-01-08 12:00:00 Me Ju Sa 162 0.43
2025-01-09 12:00:00 Me Ju Sa 160 0.17
2025-01-10 12:00:00 Me Ju Sa 159 0.04
2025-01-11 12:00:00 Me Ju Sa 157 0.22
2025-01-12 12:00:00 Me Ju Sa 156 0.38
2025-01-13 12:00:00 Me Ju Sa 154 0.52
2025-01-14 12:00:00 Me Ju Sa 153 0.64
2025-01-15 12:00:00 Me Ju Sa 151 0.74
2025-01-16 12:00:00 Me Ju Sa 150 0.83
2025-01-17 12:00:00 Me Ju Sa 148 0.91
2025-01-18 12:00:00 Me Ju Sa 146 0.97
2025-02-04 12:00:00 Me Ve Ma 157 0.69
2025-02-05 12:00:00 Me Ve Ma 155 0.07
2025-02-06 12:00:00 Me Ve Ma 153 0.78
2025-02-10 12:00:00 Me Ju Sa 108 0.94
2025-02-11 12:00:00 Me Ju Sa 106 0.81
2025-02-12 12:00:00 Me Ju Sa 104 0.66
2025-02-13 12:00:00 Me Ju Sa 103 0.47
2025-02-14 12:00:00 Me Ju Sa 101 0.23
2025-02-15 12:00:00 Me Ju Sa 99 0.06
2025-02-16 12:00:00 Me Ju Sa 97 0.46
2025-02-17 12:00:00 Me Ju Sa 96 0.99
2025-02-28 12:00:00 Me Ve Sa 21 0.47
2025-04-16 12:00:00 Me Ma Sa 123 0.07
2025-04-17 12:00:00 Me Ju Sa 82 0.63
2025-04-22 12:00:00 Me Ma Ju 116 0.99
2025-04-23 12:00:00 Me Ma Ju 115 0.84
2025-04-24 12:00:00 Me Ma Ju 115 0.69
2025-04-25 12:00:00 Me Ma Ju 114 0.56
2025-04-26 12:00:00 Me Ma Ju 113 0.44
2025-04-27 12:00:00 Me Ma Ju 113 0.34
2025-04-28 12:00:00 Me Ma Ju 112 0.24
2025-04-29 12:00:00 Me Ma Ju 111 0.16
2025-04-30 12:00:00 Me Ma Ju 110 0.08
2025-05-01 12:00:00 Me Ma Ju 109 0.02
2025-05-02 12:00:00 Me Ma Ju 108 0.03
2025-05-03 12:00:00 Me Ma Ju 107 0.07
2025-05-04 12:00:00 Me Ma Ju 106 0.11
2025-05-05 12:00:00 Me Ma Ju 105 0.14
2025-05-06 12:00:00 Me Ma Ju 104 0.16
2025-05-07 12:00:00 Me Ma Ju 103 0.17
2025-05-08 12:00:00 Me Ma Ju 102 0.17
2025-05-08 12:00:00 Ma Ju Sa 130 1.0
2025-05-09 12:00:00 Me Ma Ju 101 0.16
2025-05-09 12:00:00 Ma Ju Sa 130 0.95
2025-05-10 12:00:00 Me Ma Ju 100 0.14
2025-05-10 12:00:00 Ma Ju Sa 131 0.9
2025-05-11 12:00:00 Me Ma Ju 98 0.11
2025-05-11 12:00:00 Ma Ju Sa 131 0.84
2025-05-12 12:00:00 Me Ma Ju 97 0.06
2025-05-12 12:00:00 Ma Ju Sa 132 0.79
2025-05-13 12:00:00 Me Ma Ju 96 0.01
2025-05-13 12:00:00 Me Ju Sa 84 0.95
2025-05-13 12:00:00 Ma Ju Sa 132 0.74
2025-05-14 12:00:00 Me Ma Ju 95 0.04
2025-05-14 12:00:00 Me Ju Sa 85 0.74
2025-05-14 12:00:00 Ma Ju Sa 132 0.69
2025-05-15 12:00:00 Me Ma Ju 93 0.12
2025-05-15 12:00:00 Me Ma Sa 133 0.86
2025-05-15 12:00:00 Me Ju Sa 85 0.53
2025-05-15 12:00:00 Ma Ju Sa 133 0.64
2025-05-16 12:00:00 Me Ma Ju 92 0.21
2025-05-16 12:00:00 Me Ma Sa 133 0.66
2025-05-16 12:00:00 Me Ju Sa 85 0.31
2025-05-16 12:00:00 Ma Ju Sa 133 0.58
2025-05-17 12:00:00 Me Ma Ju 91 0.32
2025-05-17 12:00:00 Me Ma Sa 134 0.46
2025-05-17 12:00:00 Me Ju Sa 85 0.08
2025-05-17 12:00:00 Ma Ju Sa 134 0.53
2025-05-18 12:00:00 Me Ma Ju 89 0.45
2025-05-18 12:00:00 Me Ma Sa 134 0.27
2025-05-18 12:00:00 Me Ju Sa 85 0.14
2025-05-18 12:00:00 Ma Ju Sa 134 0.48
2025-05-19 12:00:00 Me Ve Ju 71 0.89
2025-05-19 12:00:00 Me Ma Ju 88 0.59
2025-05-19 12:00:00 Me Ma Sa 135 0.08
2025-05-19 12:00:00 Me Ju Sa 85 0.39
2025-05-19 12:00:00 Ma Ju Sa 135 0.43
2025-05-20 12:00:00 Me Ve Ju 71 0.36
2025-05-20 12:00:00 Me Ma Ju 86 0.75
2025-05-20 12:00:00 Me Ma Sa 135 0.1
2025-05-20 12:00:00 Me Ju Sa 85 0.64
2025-05-20 12:00:00 Ma Ju Sa 135 0.38
2025-05-21 12:00:00 Me Ve Ma 120 0.64
2025-05-21 12:00:00 Me Ve Ju 70 0.16
2025-05-21 12:00:00 Me Ma Ju 85 0.94
2025-05-21 12:00:00 Me Ma Sa 135 0.27
2025-05-21 12:00:00 Me Ju Sa 85 0.92
2025-05-21 12:00:00 Ve Ma Ju 120 0.92
2025-05-21 12:00:00 Ma Ju Sa 135 0.32
2025-05-22 12:00:00 Me Ve Ma 119 0.22
2025-05-22 12:00:00 Me Ve Ju 69 0.69
2025-05-22 12:00:00 Me Ma Sa 136 0.45
2025-05-22 12:00:00 Ve Ma Ju 119 0.77
2025-05-22 12:00:00 Ma Ju Sa 136 0.27
2025-05-23 12:00:00 Me Ve Ma 119 0.16
2025-05-23 12:00:00 Me Ve Sa 54 0.78
2025-05-23 12:00:00 Me Ma Sa 136 0.62
2025-05-23 12:00:00 Ve Ma Ju 119 0.63
2025-05-23 12:00:00 Ma Ju Sa 136 0.22
2025-05-24 12:00:00 Me Ve Ma 119 0.53
2025-05-24 12:00:00 Me Ve Sa 56 0.18
2025-05-24 12:00:00 Me Ma Sa 137 0.78
2025-05-24 12:00:00 Ve Ma Ju 119 0.49
2025-05-24 12:00:00 Ve Ma Sa 137 0.92
2025-05-24 12:00:00 Ma Ju Sa 137 0.17
2025-05-25 12:00:00 Me Ve Ma 118 0.88
2025-05-25 12:00:00 Me Ve Sa 58 0.35
2025-05-25 12:00:00 Me Ma Sa 137 0.94
2025-05-25 12:00:00 Ve Ma Ju 118 0.36
2025-05-25 12:00:00 Ve Ma Sa 137 0.67
2025-05-25 12:00:00 Ve Ju Sa 86 0.83
2025-05-25 12:00:00 Ma Ju Sa 137 0.11
2025-05-26 12:00:00 Me Ve Sa 60 0.84
2025-05-26 12:00:00 Ve Ma Ju 118 0.24
2025-05-26 12:00:00 Ve Ma Sa 138 0.46
2025-05-26 12:00:00 Ve Ju Sa 86 0.55
2025-05-26 12:00:00 Ma Ju Sa 138 0.06
2025-05-27 12:00:00 Ve Ma Ju 118 0.12
2025-05-27 12:00:00 Ve Ma Sa 138 0.27
2025-05-27 12:00:00 Ve Ju Sa 86 0.31
2025-05-27 12:00:00 Ma Ju Sa 138 0.01
2025-05-28 12:00:00 Ve Ma Ju 117 0.0
2025-05-28 12:00:00 Ve Ma Sa 138 0.11
2025-05-28 12:00:00 Ve Ju Sa 86 0.09
2025-05-28 12:00:00 Ma Ju Sa 138 0.04
2025-05-29 12:00:00 Ve Ma Ju 117 0.1
2025-05-29 12:00:00 Ve Ma Sa 139 0.02
2025-05-29 12:00:00 Ve Ju Sa 87 0.1
2025-05-29 12:00:00 Ma Ju Sa 139 0.09
2025-05-30 12:00:00 Ve Ma Ju 116 0.21
2025-05-30 12:00:00 Ve Ma Sa 139 0.13
2025-05-30 12:00:00 Ve Ju Sa 87 0.28
2025-05-30 12:00:00 Ma Ju Sa 139 0.15
2025-05-31 12:00:00 Ve Ma Ju 116 0.31
2025-05-31 12:00:00 Ve Ma Sa 140 0.23
2025-05-31 12:00:00 Ve Ju Sa 87 0.45
2025-05-31 12:00:00 Ma Ju Sa 140 0.2
2025-06-01 12:00:00 Ve Ma Ju 115 0.41
2025-06-01 12:00:00 Ve Ma Sa 140 0.32
2025-06-01 12:00:00 Ve Ju Sa 87 0.6
2025-06-01 12:00:00 Ma Ju Sa 140 0.26
2025-06-02 12:00:00 Ve Ma Ju 115 0.52
2025-06-02 12:00:00 Ve Ma Sa 141 0.39
2025-06-02 12:00:00 Ve Ju Sa 87 0.73
2025-06-02 12:00:00 Ma Ju Sa 141 0.32
2025-06-03 12:00:00 Ve Ma Ju 115 0.61
2025-06-03 12:00:00 Ve Ma Sa 141 0.44
2025-06-03 12:00:00 Ve Ju Sa 87 0.85
2025-06-03 12:00:00 Ma Ju Sa 141 0.37
2025-06-04 12:00:00 Ve Ma Ju 114 0.71
2025-06-04 12:00:00 Ve Ma Sa 142 0.48
2025-06-04 12:00:00 Ve Ju Sa 88 0.96
2025-06-04 12:00:00 Ma Ju Sa 142 0.43
2025-06-05 12:00:00 Ve Ma Ju 114 0.81
2025-06-05 12:00:00 Ve Ma Sa 142 0.52
2025-06-05 12:00:00 Ma Ju Sa 142 0.49
2025-06-06 12:00:00 Ve Ma Ju 113 0.9
2025-06-06 12:00:00 Ve Ma Sa 143 0.54
2025-06-06 12:00:00 Ma Ju Sa 143 0.55
2025-06-07 12:00:00 Ve Ma Ju 113 0.99
2025-06-07 12:00:00 Ve Ma Sa 143 0.55
2025-06-07 12:00:00 Ma Ju Sa 143 0.61
2025-06-08 12:00:00 Ve Ma Sa 144 0.55
2025-06-08 12:00:00 Ma Ju Sa 144 0.67
2025-06-09 12:00:00 Ve Ma Sa 144 0.55
2025-06-09 12:00:00 Ma Ju Sa 144 0.74
2025-06-10 12:00:00 Ve Ma Sa 145 0.54
2025-06-10 12:00:00 Ma Ju Sa 145 0.8
2025-06-11 12:00:00 Ve Ma Sa 145 0.52
2025-06-11 12:00:00 Ma Ju Sa 145 0.86
2025-06-12 12:00:00 Ve Ma Sa 146 0.49
2025-06-12 12:00:00 Ma Ju Sa 146 0.93
2025-06-13 12:00:00 Ve Ma Sa 146 0.46
2025-06-13 12:00:00 Ma Ju Sa 146 1.0
2025-06-14 12:00:00 Ve Ma Sa 147 0.43
2025-06-15 12:00:00 Ve Ma Sa 147 0.38
2025-06-16 12:00:00 Ve Ma Sa 148 0.34
2025-06-17 12:00:00 Ve Ma Sa 148 0.28
2025-06-18 12:00:00 Ve Ma Sa 149 0.22
2025-06-19 12:00:00 Ve Ma Sa 149 0.16
2025-06-20 12:00:00 Ve Ma Sa 150 0.09
2025-06-21 12:00:00 Ve Ma Sa 150 0.02
2025-06-22 12:00:00 Ve Ma Sa 151 0.04
2025-06-23 12:00:00 Me Ve Ju 67 0.86
2025-06-23 12:00:00 Ve Ma Sa 151 0.13
2025-06-24 12:00:00 Me Ve Ju 68 0.33
2025-06-24 12:00:00 Ve Ma Sa 152 0.21
2025-06-25 12:00:00 Me Ve Ju 68 0.17
2025-06-25 12:00:00 Ve Ma Sa 152 0.3
2025-06-26 12:00:00 Me Ve Ju 68 0.65
2025-06-26 12:00:00 Ve Ma Sa 153 0.4
2025-06-27 12:00:00 Me Ju Sa 119 0.56
2025-06-27 12:00:00 Ve Ma Sa 154 0.5
2025-06-28 12:00:00 Me Ju Sa 120 0.1
2025-06-28 12:00:00 Ve Ma Sa 154 0.61
2025-06-29 12:00:00 Me Ju Sa 121 0.36
2025-06-29 12:00:00 Ve Ma Sa 155 0.72
2025-06-30 12:00:00 Me Ve Sa 122 0.96
2025-06-30 12:00:00 Me Ma Ju 62 0.54
2025-06-30 12:00:00 Me Ju Sa 122 0.82
2025-06-30 12:00:00 Ve Ma Sa 155 0.83
2025-07-01 12:00:00 Me Ve Sa 123 0.7
2025-07-01 12:00:00 Me Ma Ju 63 0.04
2025-07-01 12:00:00 Ve Ma Sa 156 0.96
2025-07-02 12:00:00 Me Ve Sa 124 0.43
2025-07-02 12:00:00 Me Ma Ju 63 0.63
2025-07-03 12:00:00 Me Ve Sa 125 0.14
2025-07-04 12:00:00 Me Ve Ma 99 0.73
2025-07-04 12:00:00 Me Ve Sa 126 0.15
2025-07-05 12:00:00 Me Ve Ma 99 0.3
2025-07-05 12:00:00 Me Ve Sa 127 0.47
2025-07-06 12:00:00 Me Ve Ma 98 0.14
2025-07-06 12:00:00 Me Ve Sa 128 0.8
2025-07-07 12:00:00 Me Ve Ma 98 0.6
2025-07-08 12:00:00 Me Ma Sa 160 0.78
2025-07-09 12:00:00 Me Ma Sa 160 0.51
2025-07-10 12:00:00 Me Ma Sa 161 0.25
2025-07-11 12:00:00 Me Ma Sa 161 0.0
2025-07-12 12:00:00 Me Ma Sa 162 0.21
2025-07-13 12:00:00 Me Ma Sa 163 0.41
2025-07-14 12:00:00 Me Ma Sa 163 0.58
2025-07-15 12:00:00 Me Ma Sa 164 0.7
2025-07-16 12:00:00 Me Ma Sa 164 0.78
2025-07-17 12:00:00 Me Ma Sa 165 0.8
2025-07-18 12:00:00 Me Ma Sa 166 0.77
2025-07-19 12:00:00 Me Ma Sa 166 0.66
2025-07-20 12:00:00 Me Ma Sa 167 0.48
2025-07-21 12:00:00 Me Ma Sa 167 0.22
2025-07-22 12:00:00 Me Ma Sa 168 0.12
2025-07-23 12:00:00 Me Ma Sa 169 0.58
2025-08-21 12:00:00 Me Ve Ma 74 0.2
2025-08-22 12:00:00 Me Ve Ma 73 0.63
2025-08-22 12:00:00 Me Ma Ju 83 0.52
2025-08-23 12:00:00 Me Ma Ju 84 0.09
2025-08-24 12:00:00 Me Ve Sa 133 0.76
2025-08-24 12:00:00 Me Ma Ju 84 0.63
2025-08-25 12:00:00 Me Ve Sa 135 0.16
2025-08-26 12:00:00 Me Ve Sa 136 0.34
2025-08-26 12:00:00 Ve Ma Ju 85 0.83
2025-08-27 12:00:00 Me Ve Sa 138 0.76
2025-08-27 12:00:00 Ve Ma Ju 85 0.59
2025-08-28 12:00:00 Me Ju Sa 140 0.84
2025-08-28 12:00:00 Ve Ma Ju 86 0.37
2025-08-29 12:00:00 Me Ju Sa 142 0.63
2025-08-29 12:00:00 Ve Ma Ju 86 0.17
2025-08-30 12:00:00 Me Ju Sa 144 0.47
2025-08-30 12:00:00 Ve Ma Ju 87 0.0
2025-08-31 12:00:00 Me Ju Sa 146 0.36
2025-08-31 12:00:00 Ve Ma Ju 87 0.15
2025-09-01 12:00:00 Me Ju Sa 148 0.29
2025-09-01 12:00:00 Ve Ma Ju 88 0.29
2025-09-02 12:00:00 Me Ju Sa 149 0.27
2025-09-02 12:00:00 Ve Ma Ju 88 0.42
2025-09-03 12:00:00 Me Ju Sa 151 0.29
2025-09-03 12:00:00 Ve Ma Ju 89 0.54
2025-09-04 12:00:00 Me Ju Sa 153 0.36
2025-09-04 12:00:00 Ve Ma Ju 89 0.65
2025-09-05 12:00:00 Me Ju Sa 155 0.47
2025-09-05 12:00:00 Ve Ma Ju 90 0.76
2025-09-06 12:00:00 Me Ve Sa 158 0.89
2025-09-06 12:00:00 Me Ju Sa 158 0.63
2025-09-06 12:00:00 Ve Ma Ju 90 0.85
2025-09-07 12:00:00 Me Ve Sa 160 0.54
2025-09-07 12:00:00 Me Ju Sa 160 0.86
2025-09-07 12:00:00 Ve Ma Ju 91 0.94
2025-09-08 12:00:00 Me Ve Sa 162 0.1
2025-09-09 12:00:00 Me Ve Sa 164 0.43
2025-09-13 12:00:00 Me Ve Ju 61 0.95
2025-09-14 12:00:00 Me Ve Ju 62 0.7
2025-09-15 12:00:00 Me Ve Ju 64 0.46
2025-09-16 12:00:00 Me Ve Ju 66 0.21
2025-09-17 12:00:00 Me Ve Ju 67 0.02
2025-09-18 12:00:00 Me Ve Ju 69 0.25
2025-09-19 12:00:00 Me Ve Ju 71 0.49
2025-09-20 12:00:00 Me Ve Ju 72 0.72
2025-09-21 12:00:00 Me Ve Ju 74 0.94
2025-09-24 12:00:00 Me Ve Ma 55 0.68
2025-09-25 12:00:00 Me Ve Ma 54 0.29
2025-09-26 12:00:00 Me Ve Ma 54 0.1
2025-09-27 12:00:00 Me Ve Ma 53 0.54
2025-09-28 12:00:00 Me Ma Ju 102 0.81
2025-09-29 12:00:00 Me Ma Ju 102 0.47
2025-09-30 12:00:00 Me Ma Ju 103 0.09
2025-10-01 12:00:00 Me Ma Ju 103 0.33
2025-10-02 12:00:00 Me Ma Ju 104 0.83
2025-10-19 12:00:00 Me Ve Sa 169 0.32
2025-10-20 12:00:00 Me Ve Sa 168 0.37
2025-10-21 12:00:00 Me Ve Sa 166 0.94
2025-10-25 12:00:00 Ve Ma Sa 161 0.81
2025-10-26 12:00:00 Ve Ma Sa 160 0.59
2025-10-27 12:00:00 Ve Ma Sa 159 0.4
2025-10-28 12:00:00 Ve Ma Sa 157 0.23
2025-10-29 12:00:00 Ve Ma Sa 156 0.07
2025-10-30 12:00:00 Ve Ma Sa 155 0.06
2025-10-31 12:00:00 Ve Ma Sa 153 0.18
2025-11-01 12:00:00 Ve Ma Sa 152 0.3
2025-11-02 12:00:00 Ve Ma Sa 151 0.4
2025-11-03 12:00:00 Ve Ma Sa 149 0.5
2025-11-04 12:00:00 Ve Ma Sa 148 0.59
2025-11-05 12:00:00 Ve Ma Sa 147 0.67
2025-11-06 12:00:00 Ve Ma Sa 146 0.74
2025-11-07 12:00:00 Ve Ma Sa 144 0.81
2025-11-08 12:00:00 Ve Ma Sa 143 0.88
2025-11-09 12:00:00 Ve Ma Sa 142 0.94
2025-11-10 12:00:00 Ve Ma Sa 140 1.0
2025-11-18 12:00:00 Me Ma Sa 114 0.11
2025-11-19 12:00:00 Me Ve Ma 25 0.48
2025-11-20 12:00:00 Me Ve Sa 128 0.11
2025-11-21 12:00:00 Me Ve Ju 121 0.11
2025-11-23 12:00:00 Me Ju Sa 120 0.87
2025-11-24 12:00:00 Me Ju Sa 121 0.6
2025-11-25 12:00:00 Me Ju Sa 122 0.36
2025-11-26 12:00:00 Me Ju Sa 123 0.15
2025-11-27 12:00:00 Me Ju Sa 124 0.02
2025-11-28 12:00:00 Me Ju Sa 124 0.16
2025-11-29 12:00:00 Me Ju Sa 124 0.27
2025-11-30 12:00:00 Me Ju Sa 124 0.35
2025-12-01 12:00:00 Me Ju Sa 124 0.4
2025-12-02 12:00:00 Me Ju Sa 123 0.42
2025-12-03 12:00:00 Me Ju Sa 123 0.42
2025-12-04 12:00:00 Me Ju Sa 122 0.41
2025-12-05 12:00:00 Me Ju Sa 122 0.37
2025-12-06 12:00:00 Me Ju Sa 121 0.33
2025-12-07 12:00:00 Me Ju Sa 120 0.28
2025-12-08 12:00:00 Me Ju Sa 122 0.22
2025-12-09 12:00:00 Me Ju Sa 123 0.15
2025-12-10 12:00:00 Me Ju Sa 124 0.07
2025-12-11 12:00:00 Me Ju Sa 125 0.0
2025-12-12 12:00:00 Me Ju Sa 127 0.08
2025-12-13 12:00:00 Me Ju Sa 128 0.18
2025-12-14 12:00:00 Me Ju Sa 129 0.27
2025-12-15 12:00:00 Me Ju Sa 131 0.38
2025-12-16 12:00:00 Me Ve Ma 25 0.67
2025-12-16 12:00:00 Me Ju Sa 132 0.48
2025-12-17 12:00:00 Me Ve Ma 24 0.3
2025-12-17 12:00:00 Me Ju Sa 134 0.6
2025-12-18 12:00:00 Me Ve Ma 23 0.07
2025-12-18 12:00:00 Me Ju Sa 135 0.71
2025-12-19 12:00:00 Me Ve Ma 23 0.46
2025-12-19 12:00:00 Me Ju Sa 137 0.84
2025-12-20 12:00:00 Me Ve Ma 22 0.85
2025-12-20 12:00:00 Me Ju Sa 138 0.97
2025-12-22 12:00:00 Me Ve Sa 101 0.91
2025-12-23 12:00:00 Me Ve Sa 99 0.56
2025-12-24 12:00:00 Me Ve Sa 98 0.2
2025-12-25 12:00:00 Me Ve Sa 96 0.15
2025-12-25 12:00:00 Me Ma Sa 96 0.93
2025-12-26 12:00:00 Me Ve Sa 95 0.51
2025-12-26 12:00:00 Me Ma Sa 95 0.69
2025-12-27 12:00:00 Me Ve Sa 94 0.88
2025-12-27 12:00:00 Me Ma Sa 94 0.44
2025-12-28 12:00:00 Me Ma Sa 92 0.18
2025-12-29 12:00:00 Me Ma Sa 91 0.09
2025-12-30 12:00:00 Me Ma Sa 89 0.39
2025-12-31 12:00:00 Me Ve Ju 167 0.86
2025-12-31 12:00:00 Me Ma Sa 88 0.71

The code below does not use great circles, instead defines the planes connecting each pair of three planets and computes the largest angle between them.  After writing the code, I remembered Meeus has a similar algorithm in Astronomical Algorithms, but using great circles.
The code is written in Python, and the only external dependency is vsop87_full.py which is part of the VSOP87 Multilang project, just download the vsop87_full.py file and place it in the same directory.
Code:
#!/usr/bin/python
from vsop87a_full import *
import math
from datetime import datetime

#Finds planets in a straight line and the field of view required
#Greg Miller gmiller@gregmiller.net https://celestialprogramming.com
#Released as public domain

rad=math.pi/180.0

def jd2et(jd):
    return (jd - 2451545.0) / 365250.0

def dateFromJD(jd):
    unixtime=(jd-2440587.5)*86400
    return datetime.utcfromtimestamp(unixtime).strftime('%Y-%m-%d %H:%M:%S')

def norm(v): #Normalize vector
    l=math.sqrt(v[0]*v[0] + v[1]*v[1] + v[2]*v[2])
    u=[0,0,0]
    u[0]=v[0]/l
    u[1]=v[1]/l
    u[2]=v[2]/l
    return u

def dot(u,v): #Vector dot product
    return u[0]*v[0] + u[1]*v[1] + u[2]*v[2]

def cross(a,b): #Vector cross product
    r=[0,0,0]
    r[0]=a[1]*b[2] - a[2]*b[1]
    r[1]=a[2]*b[0] - a[0]*b[2]
    r[2]=a[0]*b[1] - a[1]*b[0]
    return r

def sub(a,b): #Subtract vector b from a
    r=[0,0,0]
    r[0]=a[0]-b[0]
    r[1]=a[1]-b[1]
    r[2]=a[2]-b[2]
    return r

def getPlanets(jd):
    planets=[0,0,0,0,0]
    t=jd2et(jd)
    earth=vsop87a_full.getEarth(t)
    planets[0]=norm(sub(vsop87a_full.getMercury(t),earth))
    planets[1]=norm(sub(vsop87a_full.getVenus(t),earth))
    planets[2]=norm(sub(vsop87a_full.getMars(t),earth))
    planets[3]=norm(sub(vsop87a_full.getJupiter(t),earth))
    planets[4]=norm(sub(vsop87a_full.getSaturn(t),earth))
    return planets

def fixangle(a):
    if(a>90): return 180-a
    return a

def getMaxAngleBetweenPlanes(plane1,plane2,plane3):
    angle1=fixangle(abs(math.acos(dot(plane1,plane2))/rad))
    angle2=fixangle(abs(math.acos(dot(plane1,plane3))/rad))
    angle3=fixangle(abs(math.acos(dot(plane2,plane3))/rad))
    angle=angle1
    if(angle2>angle): angle=angle2
    if(angle3>angle): angle=angle3
    return angle

def getFieldOfView(p): #approx FOV, only considers greatest separation
    start=0
    fov=0
    while startfov): fov=angle
        start+=1
    return fov/rad

def checkJD(jd):
    p=getPlanets(jd)
    for i in range(0,len(p)):
        for j in range(i+1,len(p)):
            plane1=norm(cross(p[i],p[j]))
            for k in range(j+1,len(p)):
                plane2=norm(cross(p[i],p[k]))
                plane3=norm(cross(p[j],p[k]))
                angle=math.floor(getMaxAngleBetweenPlanes(plane1,plane2,plane3)*100)/100.0
                fov=math.floor(getFieldOfView([p[i],p[j],p[k]]))
                if(angle<=1 and fov<=360): print(dateFromJD(jd),names[i],names[j],names[k],fov,angle)

j2000=2451545
startJD=2460677

names=["Me","Ve","Ma","Ju","Sa"]
for i in range(365):
    checkJD(startJD+i)

> **Comments:**
> **username_4**: Only exact alignments are interesting, so can you look for sign changing from one day to the next?  Or going from less than 180 to greater?  
> **username_1**: @eshaya IMHO, narrow field alignments are more interesting even if they're not at all straight. If you believe otherwise, you are free to make the changes to the program and post that as your answer.  For those that like close alignments, check out Sept 8, 2040, all five planets, and the Moon in a 10&deg; field of view.  

---

### Answer by username_6 on 2024-12-28. Score: 0

All of the planets are always approximately in a straight line in the sky, because they all lie close to the [plane of the ecliptic](https://en.wikipedia.org/wiki/Ecliptic). Since the earth is in that plane by definition, everything else in the same plane forms a straight line.

> **Comments:**
> **username_4**: This video of edge on view from that Wikipedia page says it well.  Mercury, Venus, Earth, Mars, and Jupiter are present.  https://en.m.wikipedia.org/wiki/Ecliptic#/media/File%3AEcliptic_plane_side_view.gif  

---

