コード例 #1
0
ファイル: openMSFT.py プロジェクト: hello-wangjj/python-data
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import time
from matplotlib.finance import quotes_historical_yahoo_ochl
from datetime import date
from datetime import datetime
import pandas as pd
import matplotlib.pyplot as plt
import ch
ch.set_ch()
__author__ = 'wangjj'
__mtime__ = '20161023下午 10:11'
start = datetime(2015, 1, 1)
end = datetime(2015, 12, 31)
quotes = quotes_historical_yahoo_ochl('MSFT', start, end)
fields = ['date', 'open', 'close', 'high', 'low', 'volume']
list1 = []
list2 = []
for i in range(0, len(quotes)):
    x = date.fromordinal(int(quotes[i][0]))
    y = datetime.strftime(x, '%y/%m/%d')
    list1.append(y)
    list2.append(x.month)
# print(list1)
quotes_of_MSFT = pd.DataFrame(quotes, index=list1, columns=fields)
quotes_of_MSFT = quotes_of_MSFT.drop(['date'], axis=1)
quotes_of_MSFT['month'] = list2
# print(quotes_of_MSFT)
open_MSFT = quotes_of_MSFT.groupby('month').mean().open
print open_MSFT, open_MSFT.index
list_open = []
コード例 #2
0
# coding=utf-8
from PyQt5.QtWidgets import QSizePolicy
from matplotlib.backends.backend_qt5agg import FigureCanvasQTAgg as FigureCanvas
from matplotlib.figure import Figure

import ch
ch.set_ch()  # 设置unicode编码中文显示,ch.py位于Lib文件夹


class PPG_handle(FigureCanvas):
    def __init__(self, x_list, y_list, parent=None):
        self.x = x_list
        self.y = y_list
        self.fig = Figure()
        self.fig.suptitle(u"电量描点绘图", fontsize=14).set_color("g")
        self.axes = self.fig.add_subplot(111)
        self.axes.set_autoscale_on(False)
        self.axes.set_xlabel(u"时间(30min)", fontsize=14).set_color("g")
        self.axes.set_ylabel(u"电量百分比", fontsize=14).set_color("g")
        self.axes.grid(False)
        self.compute_initial_figure(self.x, self.y)
        FigureCanvas.__init__(self, self.fig)
        self.setParent(parent)
        FigureCanvas.setSizePolicy(self, QSizePolicy.Expanding,
                                   QSizePolicy.Expanding)
        FigureCanvas.updateGeometry(self)

    def compute_initial_figure(self):
        pass

コード例 #3
0
# -*-coding:utf-8-*-
import ch
import data2matrix as d2m
import numpy as np
import dict_op
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D

ch.set_ch()  # matplotlib Chinese

data = d2m.data2matrix('data.txt', '\t')
data[:, 0] *= 2

out = [1, 3, 8]  # the out points index count from 1
out = [i - 1 for i in out]

dists = {}
N, D = data.shape
inlist = []
for i in range(N):
    if i not in out:
        inlist.append(i)
for i in inlist:
    for j in inlist:
        dists[(i, j)] = np.sqrt(np.sum((data[i] - data[j])**2))
sortlist = dict_op.sort_dict_by_value(dists)
i, j = sortlist[0]
circle_centre = (data[i] + data[j]) / 2
circle_radius = dists[(i, j)] / 2
print 'circle_centre = ', circle_centre
print 'circle_radius = %f' % circle_radius
コード例 #4
0
ファイル: cal_ball.py プロジェクト: h-bo/project_python
# -*-coding:utf-8-*-
import ch
import data2matrix as d2m
import numpy as np
import dict_op
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D

ch.set_ch() # matplotlib Chinese

data = d2m.data2matrix('data.txt', '\t')
data[:, 0] *= 2

out = [1, 3, 8]  # the out points index count from 1
out = [i - 1 for i in out]

dists = {}
N, D = data.shape
inlist = []
for i in range(N):
    if i not in out:
        inlist.append(i)
for i in inlist:
    for j in inlist:
        dists[(i, j)] = np.sqrt(np.sum((data[i] - data[j]) ** 2))
sortlist = dict_op.sort_dict_by_value(dists)
i, j = sortlist[0]
circle_centre = (data[i] + data[j]) / 2
circle_radius = dists[(i, j)] / 2
print 'circle_centre = ', circle_centre
print 'circle_radius = %f' % circle_radius
コード例 #5
0
    def main(self,file_name):
        ch.set_ch()

        nowtime = time.strftime("%Y%m%d", time.localtime())
        # now_time = datetime.datetime.now()
        # yes_time = now_time + datetime.timedelta(days=-1)
        # yes_time = yes_time.strftime('%Y%m%d')
        # today = '20170329'
        if not self.today:
            self.today = nowtime
        today = self.today
        print today
        # print yes_time


        self.document.add_heading(today + u'正负面计算验证', 0)
        # 医疗文字书写doc
        sql = '''select * from b_pn_work_jjx WHERE CURPOSNAME = "%s" AND CALINDUSTRY = "3"'''%today
        self.mysql_cursor.execute(sql)
        try:
            result = self.mysql_cursor.fetchall()[0]
            # print  result
        except:
            msg_box = QMessageBox(QMessageBox.Warning, u"提示", u"该天无数据")
            msg_box.show()
            qe = QEventLoop()  # 阻塞
            qe.exec_()
            return
        number = result[1]
        number = int(number) - 2
        # print number, type(number)
        number = str(number)
        self.document.add_heading(number + u'医疗正负面验证', 1)

        divide = re.search(u'(^.*?中性:\d+)[\s\S](.*?)[\s\S](人工负面-机器正面:\d+ 比例:\d+.\d+)[\s\S](人工[\s\S]*?)[\s\S](人工[\s\S]*?)[\s\S](改进秘书判断:)[\s\S](人工负面-机器正面:\d+ 比例:\d+.\d+)[\s\S](人工[\s\S]*?)[\s\S](人工[\s\S]*?)[\s\S](改进判断整体准确率[\S\s]*?)[\s\S](准确率=[\s\S]*?\+准确率\))',result[-1])
        if divide:
            print divide.group(1),'********',divide.group(2),'******',divide.group(3),'******',divide.group(4),'******',divide.group(5),'******',divide.group(6),'******',divide.group(7),'******',divide.group(8),'******',divide.group(9),'******',divide.group(10),'******',divide.group(11)
            content1 = divide.group(1)
            content2 = divide.group(2)
            content3 = divide.group(3)
            content4 = divide.group(4)
            content5 = divide.group(5)
            content6 = divide.group(6)
            content7 = divide.group(7)
            content8 = divide.group(8)
            content9 = divide.group(9)
            content10 = divide.group(10)
            content11 = divide.group(11)

        write1 = self.document.add_paragraph()
        run = write1.add_run(content1).bold = True

        write6 = self.document.add_paragraph()
        write6 = write6.add_run(content6)
        write6.font.name = 'Estrangelo Edessa'
        write6.font.size = Pt(10)
        write6.font.color.rgb = RGBColor(0,0,255)

        write7 = self.document.add_paragraph()
        write7 = write7.add_run(content7)
        write7.font.name = 'Estrangelo Edessa'
        write7.font.size = Pt(12)

        write8 = self.document.add_paragraph()
        write8 = write8.add_run(content8)
        write8.font.name = 'Estrangelo Edessa'
        write8.font.size = Pt(12)
        write8.font.color.rgb = RGBColor(220,20,60)

        write9 = self.document.add_paragraph()
        write9 = write9.add_run(content9)
        write9.font.name = 'Estrangelo Edessa'
        write9.font.size = Pt(12)

        write10 = self.document.add_paragraph()
        write10 = write10.add_run(content10)
        write10.font.name = 'Estrangelo Edessa'
        write10.font.size = Pt(12)
        write10.font.color.rgb = RGBColor(220,20,60)

        write11 = self.document.add_paragraph()
        write11 = write11.add_run(content11)
        write11.font.name = 'Estrangelo Edessa'
        write11.font.size = Pt(12)



        # 政府文字书写doc
        sql = '''select * from b_pn_work_jjx WHERE CURPOSNAME = "%s" AND CALINDUSTRY = "1"'''%today
        self.mysql_cursor.execute(sql)
        result = self.mysql_cursor.fetchall()[0]
        # print  result
        number = result[1]
        number = int(number) - 2
        # print number, type(number)
        number = str(number)
        self.document.add_heading(number + u'政府正负面验证', 1)

        print result[-1]
        divide = re.search(u'(^.*?中性:\d+)[\s\S](.*?)[\s\S](人工负面-机器正面:\d+ 比例:\d+.\d+)[\s\S](人工[\s\S]*?)[\s\S](人工[\s\S]*?)[\s\S](改进秘书判断:)[\s\S](人工负面-机器正面:\d+ 比例:\d+.\d+)[\s\S](人工[\s\S]*?)[\s\S](人工[\s\S]*?)[\s\S](改进判断整体准确率[\S\s]*?)[\s\S](准确率=[\s\S]*?\+准确率\))',result[-1])
        if divide:
            print divide.group(1),'********',divide.group(2),'******',divide.group(3),'******',divide.group(4),'******',divide.group(5),'******',divide.group(6),'******',divide.group(7),'******',divide.group(8),'******',divide.group(9),'******',divide.group(10),'******',divide.group(11)
            content1 = divide.group(1)
            content2 = divide.group(2)
            content3 = divide.group(3)
            content4 = divide.group(4)
            content5 = divide.group(5)
            content6 = divide.group(6)
            content7 = divide.group(7)
            content8 = divide.group(8)
            content9 = divide.group(9)
            content10 = divide.group(10)
            content11 = divide.group(11)

        write1 = self.document.add_paragraph()
        run = write1.add_run(content1).bold = True

        write6 = self.document.add_paragraph()
        write6 = write6.add_run(content6)
        write6.font.name = 'Estrangelo Edessa'
        write6.font.size = Pt(12)
        write6.font.color.rgb = RGBColor(0,0,255)

        write7 = self.document.add_paragraph()
        write7 = write7.add_run(content7)
        write7.font.name = 'Estrangelo Edessa'
        write7.font.size = Pt(12)

        write8 = self.document.add_paragraph()
        write8 = write8.add_run(content8)
        write8.font.name = 'Estrangelo Edessa'
        write8.font.size = Pt(12)
        write8.font.color.rgb = RGBColor(220,20,60)

        write9 = self.document.add_paragraph()
        write9 = write9.add_run(content9)
        write9.font.name = 'Estrangelo Edessa'
        write9.font.size = Pt(12)

        write10 = self.document.add_paragraph()
        write10 = write10.add_run(content10)
        write10.font.name = 'Estrangelo Edessa'
        write10.font.size = Pt(12)
        write10.font.color.rgb = RGBColor(220,20,60)

        write11 = self.document.add_paragraph()
        write11 = write11.add_run(content11)
        write11.font.name = 'Estrangelo Edessa'
        write11.font.size = Pt(12)

        result = self.get_all()
        # draw_pic1(result)
        self.draw_pic2(result)
        # draw_pic3(result)
        self.draw_pic4(result)
        # draw_pic5(result)
        self.draw_pic6(result)

        name = '%s.docx'%today
        self.document.save(name)
        print sys.path[0],'************',file_name
        shutil.move(sys.path[0]+'\\'+name,file_name+'\\'+name)
        os.remove(sys.path[0] + '\\2.png')
        os.remove(sys.path[0] + '\\4.png')
        os.remove(sys.path[0] + '\\6.png')
        return