parent
372b3db354
commit
030474ebd1
@ -0,0 +1,64 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
from matplotlib import pyplot as plt
|
||||
import matplotlib
|
||||
import settings
|
||||
import re
|
||||
|
||||
plt.rcParams['font.family'] = settings.FONT
|
||||
|
||||
class view:
|
||||
|
||||
def __init__(self, itemList):
|
||||
self.id = itemList[0]
|
||||
self.string = itemList[1]
|
||||
|
||||
def getFont(): # 列出可用的字体
|
||||
font = sorted([f.name for f in matplotlib.font_manager.fontManager.ttflist])
|
||||
for i in font:
|
||||
print(i)
|
||||
|
||||
def main(self):
|
||||
|
||||
def str2data(string) -> list:
|
||||
reg = r"[+-]?([0-9]*\.?[0-9]+|[0-9]+\.?[0-9]*)"
|
||||
pattern = re.compile(reg)
|
||||
return pattern.findall(string)
|
||||
|
||||
def show(itemList):
|
||||
|
||||
x = []
|
||||
y = []
|
||||
|
||||
while itemList:
|
||||
temp = itemList.pop()
|
||||
|
||||
date = temp[0] + "月" + temp[1] + "日"
|
||||
price = "¥" + temp[2] + "元"
|
||||
x.append(date)
|
||||
y.append(price)
|
||||
|
||||
date = temp[3] + "月" + temp[4] + "日"
|
||||
price = "¥" + temp[5] + "元"
|
||||
x.append(date)
|
||||
y.append(price)
|
||||
|
||||
plt.title("价格趋势")
|
||||
plt.bar(x, y, color = 'g', align = 'center')
|
||||
plt.xticks(size = 10.0, rotation = 45)
|
||||
plt.xlabel("日期")
|
||||
plt.ylabel("价格")
|
||||
plt.plot(x, y, color = 'red', linewidth = 5.0, linestyle = '--')
|
||||
|
||||
plt.show()
|
||||
|
||||
itemList = []
|
||||
for astr in self.string.split(';'):
|
||||
strList = str2data(astr)
|
||||
try:
|
||||
print(astr)
|
||||
itemList.append(strList)
|
||||
except BaseException:
|
||||
break
|
||||
show(itemList)
|
||||
|
||||
def getData()
|
Loading…
Reference in new issue