python matplotlib plt 画图 将刻度 替换为文字/字符以及画断断续续的分段函数
生活随笔
收集整理的這篇文章主要介紹了
python matplotlib plt 画图 将刻度 替换为文字/字符以及画断断续续的分段函数
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
直接上代碼
import numpy as npimport matplotlib.pyplot as plt from pylab import * import matplotlib; matplotlib.use('TkAgg') mpl.rcParams['font.sans-serif'] = ['SimHei'] mpl.rcParams['axes.unicode_minus'] = FalsePstate1 = np.array([[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],[0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],[0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0],[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],[1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0]])for i in range(24 - 1):#遍歷每一個時間#機組1if Pstate1[0,i]*Pstate1[0,i+1]==1:plt.plot([i, i + 1], [Pstate1[0,i], Pstate1[0,i+1]], color='red')elif Pstate1[0,i]*Pstate1[0,i+1]!=1:plt.plot([i, i + 1], [Pstate1[0, i], Pstate1[0, i + 1]], color='white')#機組2if Pstate1[1, i] * Pstate1[1, i + 1] == 1:plt.plot([i, i + 1], 2*np.array([Pstate1[1, i], Pstate1[1, i + 1]]), color='blue')elif Pstate1[1, i] * Pstate1[1, i + 1] != 1:plt.plot([i, i + 1], 2*np.array([Pstate1[1, i], Pstate1[1, i + 1]]), color='white')#機組3if Pstate1[2, i] * Pstate1[2, i + 1] == 1:plt.plot([i, i + 1], 3*np.array([Pstate1[2, i], Pstate1[2, i + 1]]), color='deeppink')elif Pstate1[2, i] * Pstate1[2, i + 1] != 1:plt.plot([i, i + 1], 3*np.array([Pstate1[2, i], Pstate1[2, i + 1]]), color='white')# 機組4if Pstate1[3, i] * Pstate1[3, i + 1] == 1:plt.plot([i, i + 1], 4 * np.array([Pstate1[3, i], Pstate1[3, i + 1]]), color='burlywood')elif Pstate1[3, i] * Pstate1[3, i + 1] != 1:plt.plot([i, i + 1], 4 * np.array([Pstate1[3, i], Pstate1[3, i + 1]]), color='white')#機組5if Pstate1[4, i] * Pstate1[4, i + 1] == 1:plt.plot([i, i + 1], 5 * np.array([Pstate1[4, i], Pstate1[4, i + 1]]), color='darkgreen')elif Pstate1[4, i] * Pstate1[4, i + 1] != 1:plt.plot([i, i + 1], 5 * np.array([Pstate1[4, i], Pstate1[4, i + 1]]), color='white')#機組6if Pstate1[5, i] * Pstate1[5, i + 1] == 1:plt.plot([i, i + 1], 6 * np.array([Pstate1[5, i], Pstate1[5, i + 1]]), color='crimson')elif Pstate1[5, i] * Pstate1[5, i + 1] != 1:plt.plot([i, i + 1], 6 * np.array([Pstate1[5, i], Pstate1[5, i + 1]]), color='white') plt.yticks([0,1,2,3,4,5,6], labels=[' ','機組1','機組2','機組3','機組4','機組5','機組6']) plt.xticks(np.arange(0,24,1)) plt.xlabel('t/h') plt.title('方法一機組開停狀態組合') plt.show()
作者:電氣-余登武
總結
以上是生活随笔為你收集整理的python matplotlib plt 画图 将刻度 替换为文字/字符以及画断断续续的分段函数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 商业发票模板制作(商业发票模板)
- 下一篇: 瑞和哪个字最搭做女孩名字