如何用 Python 绘制中国古代星图 (III)


图3:翼宿的连线

中国古代星图 – 星官的连线

中国古代星图与西方的星图有明显的区别。中国的星图主要以星点和连线构成,通常没有生动的神话人物或动物图案。这种设计反映了其功能的实用性,主要用于星占和测量行星、彗星的移动轨迹。

在中国古代,星官系统被用来描述和记录天体的位置,星图中的星星通常通过数字和文字来标识,这反映了古代中国对天文观测的重视和科学方法的应用。这样的星图更注重于实用性和准确性,而非艺术表现。

                               图1:西方1729年印制的弗拉姆斯蒂德(Flamsteed) 星图
 

                                        图2:1744年清朝的《仪象考成赤道北恒星图》

本程序依据仪象考成星图的连线制作。

#constellation_lines.py
def draw_lines(ra, dec, plt):
    x_values = []
    y_values = []
    for i in lines:
        if i == -1:             # -1 代表连线結束
          # 画出连线 
          plt.plot(x_values, y_values, color="#1f77b4", linewidth=0.8)    
          x_values=[]
          y_values=[]
        else:
          # 同一组连线,放在列表內
          x_values.append(ra[i])
          y_values.append(dec[i])

# 中國星官連線數據
lines=[]
# 北極
lines += [0,1,2,3,4, -1]
# 勾陳
lines += [12,11,10,9,13,14,-1]
# 天柱
lines += [24,25,26,27,28, -1]
# 御女
lines += [36,37,34,35, -1]
# 尚書
lines += [43,44,-1]
lines += [43,45,-1]
lines += [43,46,-1]
lines += [43,47,-1]
# 天床
lines += [50,54,53, -1]
lines += [51,52, -1]
# 陰德
lines += [58,59, -1]
# 六甲
lines += [60,61,62,63,64,65,60, -1]
# 五帝內座
lines += [67,66,68, -1]
lines += [69,66,70, -1]
# 華蓋
lines += [73,74,75,76,77,78, -1]
# 杠
lines += [79,80,81,82,83,84,85,86,87, -1]
# 紫微右垣
lines += [89,90,91,92,93,94,95, -1]
# 紫微左垣
lines += [104,105,106,107,108,109,110,111, -1]
#內廚
lines += [125, 126, -1]
# 北斗
lines += [129,130,131,132,133,134,135, -1]       
# 天槍
lines += [155,156,157, -1]
# 天理阻礙北斗,故刪
# 天牢
lines += [179,180,-1]
lines += [181,182,-1]
lines += [183,184,-1]
# 勢
lines += [187,188,189,190,187, -1]
# 文昌
lines += [205,206,207,208,209,-1]
# 內階
lines += [
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值