import math
from openpyxl import load_workbook, Workbook
# 打开原始Excel文件
wb = load_workbook('result040810-116个点.xlsx')
ws = wb.active
# 创建新的Excel文件
wb_new = Workbook()
ws_new = wb_new.active
# 添加表头
ws_new.cell(row=1, column=1).value = 'x'
ws_new.cell(row=1, column=2).value = 'y'
ws_new.cell(row=1, column=3).value = 'z'
# 遍历每行数据并转换坐标
for row in range(2, ws.max_row+1): # 从第2行开始读取数据
b = ws.cell(row=row, column=1).value
c = ws.cell(row=row, column=2).value
d = ws.cell(row=row, column=3).value
x = math.sin(c * math.pi / 180) * d * -1 * math.cos(b * math.pi / 180)
y = math.sin(c * math.pi / 180) * d * -1 * math.sin(b * math.pi / 180)
z = d * math.cos(c * math.pi / 180)
ws_new.cell(row=row, column=1).value = round(x, 2) # 将转换后的数据写入新的Excel文件
ws_new.cell(row=row, column=2).value = round(y, 2)
ws_new.cell(row=row, column=3).value = round(z, 2)
# 添加数字格式
for col in range(1, 4):
ws_new.cell(row=row, column=col).number_format = '0.00'
# 保存新的Excel文件
wb_new.save('result040810-116个点-1.xlsx')
转换前,转换后
Data1 | Data2 | Data3 | x | y | z | ||
0 | 0 | 4887 | 0.00 | 0.00 | 4887.00 | ||
0 | 5 | 4875 | -424.88 | 0.00 | 4856.45 | ||
72 | 5 | 4902 | -132.02 | -406.33 | 4883.35 | ||
144 | 5 | 4917 | 346.70 | -251.89 | 4898.29 | ||
216 | 5 | 4886 | 344.51 | 250.30 | 4867.41 | ||
288 | 5 | 4871 | -131.19 | 403.76 | 4852.46 | ||
324 | 10 | 4917 | -690.76 | 501.87 | 4842.30 | ||
288 | 10 | 4904 | -263.15 | 809.89 | 4829.50 | ||
252 | 10 | 4905 | 263.20 | 810.06 | 4830.48 | ||
216 | 10 | 4906 | 689.22 | 500.74 | 4831.47 | ||
180 | 10 | 4975 | 863.90 | 0.00 | 4899.42 | ||
144 | 10 | 5015 | 704.53 | -511.87 | 4938.81 | ||
108 | 10 | 5048 | 270.88 | -833.67 | 4971.31 | ||
72 | 10 | 4979 | -267.17 | -822.28 | 4903.36 | ||
36 | 10 | 4988 | -700.74 | -509.11 | 4912.22 | ||
0 | 10 | 4948 | -859.21 | 0.00 | 4872.83 | ||
0 | 14 | 4758 | -1151.06 | 0.00 | 4616.67 | ||
30 | 14 | 4884 | -1023.25 | -590.77 | 4738.92 | ||
60 | 14 | 5070 | -613.27 | -1062.22 | 4919.40 | ||
90 | 14 | 5136 | 0.00 | -1242.51 | 4983.44 | ||
120 | 14 | 5133 | 620.89 | -1075.42 | 4980.53 | ||
150 | 14 | 5116 | 1071.86 | -618.84 | 4964.03 | ||
180 | 14 | 5059 | 1223.88 | 0.00 | 4908.73 | ||
210 | 14 | 5050 | 1058.03 | 610.85 | 4899.99 | ||
240 | 14 | 4477 | 541.54 | 937.98 | 4344.01 | ||
270 | 14 | 4327 | 0.00 | 1046.80 | 4198.47 | ||
300 | 14 | 4927 | -595.97 | 1032.26 | 4780.65 | ||
330 | 14 | 4933 | -1033.52 | 596.70 | 4786.47 | ||
336 | 18 | 5085 | -1435.50 | 639.13 | 4836.12 | ||
312 | 18 | 5087 | -1051.85 | 1168.20 | 4838.02 | ||
288 | 18 | 3481 | -332.41 | 1023.04 | 3310.63 | ||
264 | 18 | 2931 | 94.67 | 900.77 | 2787.55 | ||
240 | 18 | 3019 | 466.46 | 807.93 | 2871.24 | ||
216 | 18 | 3379 | 844.75 | 613.75 | 3213.62 | ||
192 | 18 | 5094 | 1539.73 | 327.28 | 4844.68 | ||
168 | 18 | 4684 | 1415.81 | -300.94 | 4454.75 | ||
144 | 18 | 4721 | 1180.25 | -857.50 | 4489.94 | ||
120 | 18 | 5246 | 810.55 | -1403.92 | 4989.24 | ||
96 | 18 | 5226 | 168.81 | -1606.08 | 4970.22 | ||
72 | 18 | 5117 | -488.63 | -1503.85 | 4866.56 | ||
48 | 18 | 5199 | -1075.01 | -1193.92 | 4944.54 | ||
24 | 18 | 5125 | -1446.79 | -644.15 | 4874.16 | ||
0 | 18 | 4762 | -1471.54 | 0.00 | 4528.93 | ||
0 | 22 | 4495 | -1683.86 | 0.00 | 4167.69 | ||
20 | 22 | 4580 | -1612.23 | -586.80 | 4246.50 | ||
40 | 22 | 5193 | -1490.21 | -1250.44 | 4814.87 | ||
60 | 22 | 5180 | -970.23 | -1680.49 | 4802.81 | ||
80 | 22 | 5268 | -342.68 | -1943.45 | 4884.40 | ||
100 | 22 | 5300 | 344.76 | -1955.25 | 4914.07 | ||
120 | 22 | 5252 | 983.72 | -1703.85 | 4869.57 | ||
140 | 22 | 4487 | 1287.61 | -1080.44 | 4160.27 | ||
160 | 22 | 4058 | 1428.48 | -519.92 | 3762.51 | ||
180 | 22 | 4212 | 1577.84 | 0.00 | 3905.30 | ||
200 | 22 | 4483 | 1578.08 | 574.38 | 4156.57 | ||
220 | 22 | 3184 | 913.70 | 766.68 | 2952.15 | ||
240 | 22 | 2689 | 503.66 | 872.36 | 2493.20 | ||
260 | 22 | 2586 | 168.22 | 954.02 | 2397.70 | ||
280 | 22 | 2690 | -174.98 | 992.38 | 2494.12 | ||
300 | 22 | 3173 | -594.31 | 1029.38 | 2941.95 | ||
320 | 22 | 5125 | -1470.70 | 1234.06 | 4751.82 | ||
340 | 22 | 4457 | -1568.93 | 571.04 | 4132.46 | ||
342 | 26 | 4275 | -1782.31 | 579.11 | 3842.34 | ||
324 | 26 | 4184 | -1483.85 | 1078.08 | 3760.55 | ||
306 | 26 | 3586 | -924.00 | 1271.77 | 3223.08 | ||
288 | 26 | 2606 | -353.02 | 1086.48 | 2342.26 | ||
270 | 26 | 2254 | 0.00 | 988.09 | 2025.88 | ||
252 | 26 | 2192 | 296.94 | 913.88 | 1970.16 | ||
234 | 26 | 2397 | 617.63 | 850.10 | 2154.41 | ||
216 | 26 | 2642 | 936.98 | 680.76 | 2374.61 | ||
198 | 26 | 4037 | 1683.09 | 546.87 | 3628.43 | ||
180 | 26 | 3644 | 1597.42 | 0.00 | 3275.21 | ||
162 | 26 | 3634 | 1515.07 | -492.28 | 3266.22 | ||
144 | 26 | 3857 | 1367.88 | -993.83 | 3466.65 | ||
126 | 26 | 4641 | 1195.84 | -1645.93 | 4171.30 | ||
108 | 26 | 5495 | 744.38 | -2290.95 | 4938.87 | ||
90 | 26 | 5528 | 0.00 | -2423.32 | 4968.53 | ||
72 | 26 | 5505 | -745.73 | -2295.12 | 4947.86 | ||
54 | 26 | 5421 | -1396.82 | -1922.56 | 4872.36 | ||
36 | 26 | 5414 | -1920.07 | -1395.02 | 4866.07 | ||
18 | 26 | 4371 | -1822.34 | -592.11 | 3928.63 | ||
0 | 26 | 4110 | -1801.71 | 0.00 | 3694.04 | ||
0 | 30 | 3269 | -1634.50 | 0.00 | 2831.04 | ||
15 | 30 | 3699 | -1786.48 | -478.69 | 3203.43 | ||
30 | 30 | 4527 | -1960.25 | -1131.75 | 3920.50 | ||
45 | 30 | 5609 | -1983.08 | -1983.08 | 4857.54 | ||
60 | 30 | 5685 | -1421.25 | -2461.68 | 4923.35 | ||
75 | 30 | 5638 | -729.61 | -2722.94 | 4882.65 | ||
90 | 30 | 5658 | 0.00 | -2829.00 | 4899.97 | ||
105 | 30 | 5783 | 748.38 | -2792.97 | 5008.22 | ||
120 | 30 | 4476 | 1119.00 | -1938.16 | 3876.33 | ||
135 | 30 | 3623 | 1280.92 | -1280.92 | 3137.61 | ||
150 | 30 | 3495 | 1513.38 | -873.75 | 3026.76 | ||
165 | 30 | 3265 | 1576.87 | -422.52 | 2827.57 | ||
180 | 30 | 3251 | 1625.50 | 0.00 | 2815.45 | ||
195 | 30 | 3428 | 1655.60 | 443.62 | 2968.74 | ||
210 | 30 | 3040 | 1316.36 | 760.00 | 2632.72 | ||
225 | 30 | 2338 | 826.61 | 826.61 | 2024.77 | ||
240 | 30 | 2172 | 543.00 | 940.50 | 1881.01 | ||
255 | 30 | 2004 | 259.34 | 967.86 | 1735.51 | ||
270 | 30 | 2022 | 0.00 | 1011.00 | 1751.10 | ||
285 | 30 | 2286 | -295.83 | 1104.05 | 1979.73 | ||
300 | 30 | 2487 | -621.75 | 1076.90 | 2153.81 | ||
315 | 30 | 3351 | -1184.76 | 1184.76 | 2902.05 | ||
330 | 30 | 3447 | -1492.59 | 861.75 | 2985.19 | ||
345 | 30 | 3511 | -1695.68 | 454.36 | 3040.62 | ||
336 | 33 | 3326 | -1654.86 | 736.79 | 2789.42 | ||
324 | 33 | 3289 | -1449.21 | 1052.91 | 2758.39 | ||
312 | 33 | 3261 | -1188.42 | 1319.88 | 2734.90 | ||
300 | 33 | 2480 | -675.35 | 1169.74 | 2079.90 | ||
288 | 33 | 2039 | -343.17 | 1056.17 | 1710.05 | ||
276 | 33 | 2006 | -114.20 | 1086.56 | 1682.37 | ||
264 | 33 | 1910 | 108.74 | 1034.56 | 1601.86 | ||
252 | 33 | 1855 | 312.20 | 960.86 | 1555.73 | ||
240 | 33 | 1891 | 514.96 | 891.93 | 1585.93 | ||
228 | 33 | 2008 | 731.78 | 812.73 | 1684.05 | ||
216 | 33 | 2266 | 998.45 | 725.42 | 1900.43 | ||
204 | 33 | 2969 | 1477.23 | 657.71 | 2490.01 | ||
192 | 33 | 3247 | 1729.80 | 367.68 | 2723.16 | ||
180 | 33 | 3073 | 1673.68 | 0.00 | 2577.23 | ||
168 | 33 | 3052 | 1625.91 | -345.60 | 2559.62 | ||
156 | 33 | 3077 | 1530.97 | -681.63 | 2580.59 | ||
144 | 33 | 3130 | 1379.15 | -1002.01 | 2625.04 | ||
132 | 33 | 3577 | 1303.58 | -1447.78 | 2999.92 | ||
120 | 33 | 4257 | 1159.26 | -2007.90 | 3570.22 | ||
108 | 33 | 5318 | 895.03 | -2754.63 | 4460.05 | ||
96 | 33 | 5916 | 336.80 | -3204.43 | 4961.58 | ||
84 | 33 | 5849 | -332.99 | -3168.14 | 4905.38 | ||
72 | 33 | 5864 | -986.93 | -3037.45 | 4917.96 | ||
60 | 33 | 5670 | -1544.05 | -2674.38 | 4755.26 | ||
48 | 33 | 5810 | -2117.37 | -2351.57 | 4872.68 | ||
36 | 33 | 4641 | -2044.93 | -1485.73 | 3892.27 | ||
24 | 33 | 4549 | -2263.37 | -1007.72 | 3815.11 | ||
12 | 33 | 3341 | -1779.88 | -378.32 | 2802.00 | ||
0 | 33 | 3023 | -1646.44 | 0.00 | 2535.30 | ||
0 | 37 | 2800 | -1685.08 | 0.00 | 2236.18 | ||
10 | 37 | 2914 | -1727.05 | -304.52 | 2327.22 | ||
20 | 37 | 3185 | -1801.18 | -655.58 | 2543.65 | ||
30 | 37 | 3952 | -2059.73 | -1189.19 | 3156.21 | ||
40 | 37 | 4402 | -2029.40 | -1702.87 | 3515.59 | ||
50 | 37 | 5497 | -2126.46 | -2534.21 | 4390.10 | ||
60 | 37 | 6185 | -1861.11 | -3223.54 | 4939.56 | ||
70 | 37 | 6172 | -1270.40 | -3490.40 | 4929.18 | ||
80 | 37 | 6253 | -653.46 | -3705.98 | 4993.87 | ||
90 | 37 | 6222 | 0.00 | -3744.49 | 4969.11 | ||
100 | 37 | 6132 | 640.82 | -3634.27 | 4897.23 | ||
110 | 37 | 4755 | 978.74 | -2689.05 | 3797.51 | ||
120 | 37 | 4084 | 1228.91 | -2128.53 | 3261.63 | ||
130 | 37 | 3419 | 1322.60 | -1576.22 | 2730.53 | ||
140 | 37 | 3099 | 1428.69 | -1198.81 | 2474.97 | ||
150 | 37 | 2967 | 1546.36 | -892.79 | 2369.55 | ||
160 | 37 | 2865 | 1620.22 | -589.71 | 2288.09 | ||
170 | 37 | 2759 | 1635.18 | -288.33 | 2203.44 | ||
180 | 37 | 2808 | 1689.90 | 0.00 | 2242.57 | ||
190 | 37 | 2991 | 1772.68 | 312.57 | 2388.72 | ||
200 | 37 | 3055 | 1727.67 | 628.82 | 2439.83 | ||
210 | 37 | 2565 | 1336.84 | 771.83 | 2048.50 | ||
220 | 37 | 2198 | 1013.32 | 850.27 | 1755.40 | ||
230 | 37 | 1899 | 734.61 | 875.47 | 1516.61 | ||
240 | 37 | 1749 | 526.29 | 911.56 | 1396.81 | ||
250 | 37 | 1730 | 356.09 | 978.35 | 1381.64 | ||
260 | 37 | 1722 | 179.96 | 1020.58 | 1375.25 | ||
270 | 37 | 1723 | 0.00 | 1036.93 | 1376.05 | ||
280 | 37 | 1811 | -189.26 | 1073.33 | 1446.33 | ||
290 | 37 | 1980 | -407.55 | 1119.73 | 1581.30 | ||
300 | 37 | 2082 | -626.49 | 1085.11 | 1662.76 | ||
310 | 37 | 2491 | -963.62 | 1148.39 | 1989.40 | ||
320 | 37 | 3045 | -1403.80 | 1177.93 | 2431.85 | ||
330 | 37 | 2971 | -1548.45 | 894.00 | 2372.75 | ||
340 | 37 | 2649 | -1498.07 | 545.25 | 2115.59 |