尝试作图7
# -*- coding: utf-8 -*- """ Created on Sun Jan 9 17:13:01 2022 @author: Administrator """ import matplotlib.pyplot as plt import matplotlib import matplotlib.gridspec as gridspec matplotlib.rcParams['font.family'] = 'FangSong' jihe = {'干支': '辛丑年辛丑月庚辰日辛巳時', '旬首': '己', '旬空': {'日空': '申酉', '時空': '申酉'}, '局日': '乙庚日', '排局': '陽遁三局上元', '節氣': '大寒', '值符值使': {'值符星宮': ['輔', '乾'], '值使門宮': ['杜', '坤']}, '天乙': '心', '天盤': [{'乾': '己', '坎': '丁', '艮': '乙', '震': '壬', '巽': '辛', '離': '丙', '坤': '癸', '兌': '戊'}, {'艮': '庚'}], '地盤': {'震': '戊', '巽': '己', '中': '庚', '乾': '辛', '兌': '壬', '艮': '癸', '離': '丁', '坎': '丙', '坤': '乙'}, '門': {'坤': '杜', '兌': '景', '乾': '死', '坎': '驚', '艮': '開', '震': '休', '巽': '生', '離': '傷'}, '星': {'乾': '輔', '坎': '英', '艮': '禽', '震': '柱', '巽': '心', '離': '蓬', '坤': '任', '兌': '沖'}, '神': {'乾': '符', '坎': '蛇', '艮': '陰', '震': '合', '巽': '勾', '離': '雀', '坤': '地', '兌': '天'}, '馬星': {'天馬': '戌', '丁馬': '丑', '驛馬': '亥'}, '長生運': {'天盤': {'乾': {'己': '墓'}, '坎': {'丁': '沐浴'}, '艮': {'乙': '胎'}, '震': {'壬': '病'}, '巽': {'辛': '帝旺'}, '離': {'丙': '長生'}, '坤': {'癸': '死'}, '兌': {'戊': '養'}}, '地盤': {'震': {'戊': '養'}, '巽': {'己': '墓'}, '中': {'庚': '臨冠'}, '乾': {'辛': '帝旺'}, '兌': {'壬': '病'}, '艮': {'癸': '死'}, '離': {'丁': '沐浴'}, '坎': {'丙': '長生'}, '坤': {'乙': '胎'}}}} gs = gridspec.GridSpec(3, 3) def paipan(x): plt.xticks([]) plt.yticks([]) global dipan, tianpan, men #地盘干 dipan = jihe['地盤'][x] plt.text(0.65, 0.1, dipan) #天盘干 tianpan = jihe['天盤'][0][x] plt.text(0.65, 0.3, tianpan) # tianpan0 = jihe['天盤'][1][x] # if tianpan0 == jihe['地盤']['中']: # plt.text(0.65, 0.3, tianpan0) men = jihe['門'][x] plt.text(0.4, 0.1, men) xing = jihe['星'][x] plt.text(0.4, 0.3, xing) if xing == '禽': plt.text(0.5, 0.3, '芮') shen = jihe['神'][x] if shen == '勾': plt.text(0.4, 0.5, '虎') elif shen == '雀': plt.text(0.4, 0.5, '武') else: plt.text(0.4, 0.5, shen) gong4 = plt.subplot(gs[0, 0]) plt.title("巽四宫") paipan('巽') if dipan == '壬' or tianpan == '壬': plt.text(0.1, 0.6, '壬六击') if dipan == '癸' or tianpan == '癸': plt.text(0.05, 0.3, '癸六击') if dipan == '辛' or tianpan == '辛': plt.text(0.65, 0.5, '辛入墓') if dipan == '壬' or tianpan == '壬': plt.text(0.65, 0.7, '壬入墓') #门迫 if men == '驚' or men == '開': plt.text(0.5, 0.05, '门迫', fontsize=9, color='green') gong3 = plt.subplot(gs[1, 0]) plt.xlabel("震三宫") paipan('震') if dipan == '戊' or tianpan == '戊': plt.text(0.05, 0.3, '戊六击') #门迫 if men == '驚' or men == '開': plt.text(0.5, 0.05, '门迫', fontsize=9, color='green') gong8 = plt.subplot(gs[2, 0]) plt.xlabel("艮八宫") paipan('艮') if dipan == '庚' or tianpan == '庚': plt.text(0.05, 0.3, '庚六击') if dipan == '庚' or tianpan == '庚': plt.text(0.65, 0.7, '庚入墓') if dipan == '丁' or tianpan == '丁': plt.text(0.65, 0.5, '丁入墓') if dipan == '己' or tianpan == '己': plt.text(0.65, 0.5, '己入墓') if men == '杜' or men == '傷': plt.text(0.5, 0.05, '门迫', fontsize=9, color='green') gong9 = plt.subplot(gs[0, 1]) plt.title("离九宫") paipan('離') if dipan == '辛' or tianpan == '辛': plt.text(0.05, 0.3, '辛六击') if men == '休': plt.text(0.5, 0.05, '门迫', fontsize=9, color='green') gong5 = plt.subplot(gs[1, 1]) plt.xticks([]) plt.yticks([]) plt.text(0.35,0.8, jihe['干支'][0:3]) plt.text(0.35,0.6, jihe['干支'][3:6]) plt.text(0.35,0.4, jihe['干支'][6:9], color='red') plt.text(0.35,0.2, jihe['干支'][9:], color='red') dipan5 = jihe['地盤']['中'] plt.text(0.85, 0.1, dipan5) gong1 = plt.subplot(gs[2, 1]) plt.xlabel("坎一宫") paipan('坎') if men == '死' or men == '生': plt.text(0.5, 0.05, '门迫', fontsize=9, color='green') gong2 = plt.subplot(gs[0, 2]) plt.title("坤二宫") paipan('坤') #六仪击刑 if dipan == '己' or tianpan == '己': plt.text(0.05, 0.3, '己六击') #入墓 if dipan == '癸' or tianpan == '癸': plt.text(0.65, 0.7, '癸入墓') if dipan == '乙' or tianpan == '乙': plt.text(0.65, 0.5, '乙入墓') #门迫 if men == '杜' or men == '傷': plt.text(0.5, 0.05, '门迫', fontsize=9, color='green') gong7 = plt.subplot(gs[1, 2]) plt.xlabel("兑七宫") paipan('兌') if men == '景': plt.text(0.5, 0.05, '门迫', fontsize=9, color='green') gong6 = plt.subplot(gs[2, 2]) plt.xlabel("乾六宫") paipan('乾') if dipan == '丙' or tianpan == '丙': plt.text(0.65, 0.5, '丙入墓') if dipan == '戊' or tianpan == '戊': plt.text(0.65, 0.6, '戊入墓') if dipan == '乙' or tianpan == '乙': plt.text(0.65, 0.7, '乙入墓') if men == '景': plt.text(0.5, 0.05, '门迫', fontsize=9, color='green') if jihe['旬空']['時空'] == '戌亥': plt.text(0.65, 0.8, '空亡', color='red') if jihe['馬星']['驛馬'] == '亥': plt.text(0.85, 0.8, '马', color='blue') plt.savefig('test', dpi=1200) plt.show()
效果如下:已经把六仪击刑、入墓、门迫补充完整了