读取mongodb 显示日k 指定日期近500条 不能超过800条
来源:互联网 发布:centos查看gcc 编辑:程序博客网 时间:2024/05/30 04:32
#!/usr/bin/env pythonimport matplotlib.pyplot as pltfrom matplotlib.dates import DateFormatter, WeekdayLocator,\ DayLocator, MONDAYfrom matplotlib.finance import candlestick_ohlcimport matplotlibimport datetimeimport pymongo#from datetime import datetime#from datetime import timedeltaglobal stocksglobal k_riglobal list_codeglobal conn_list, conn_kquotes = []def show(code, name, quotes): #print quotes print code, name if len(quotes) == 0: raise SystemExit mondays = WeekdayLocator(MONDAY) # major ticks on the mondays alldays = DayLocator() # minor ticks on the days weekFormatter = DateFormatter('%b %d') # e.g., Jan 12 dayFormatter = DateFormatter('%d') # e.g., 12 fig, ax = plt.subplots() fig.subplots_adjust(bottom=0.2) ax.xaxis.set_major_locator(mondays) ax.xaxis.set_minor_locator(alldays) ax.xaxis.set_major_formatter(weekFormatter) ax.xaxis.set_minor_formatter(dayFormatter) #plot_day_summary(ax, quotes, ticksize=3) candlestick_ohlc(ax, quotes, width=0.6) ax.xaxis_date() ax.autoscale_view() plt.setp(plt.gca().get_xticklabels(), rotation=45, horizontalalignment='right') plt.show()def init_mongodb_list(): global stocks global conn_list # mongodb_link = 'mongodb://127.0.0.1:27017' # mongoClient = MongoClient(mongodb_link) conn_list = pymongo.MongoClient("localhost", 27017) conn_list.stock_list.authenticate("d", "zz") db = conn_list.stock_list stocks = db.stocksdef init_mongodb_k(): global k_ri global conn_k conn_k = pymongo.MongoClient("localhost", 27017) conn_k.db_stock.authenticate("d", "zz") db = conn_k.db_stock k_ri = db.k_ridef get_k_ri(code, date, quotes): l = k_ri.find({"code": code, "date": {"$lte": date}}).sort([('date', -1)]).limit(500) for i in l: code = i.get("code") date = i.get("date") open = i.get("open") high = i.get("high") low = i.get("low") close = i.get("close") volume = i.get("volume") adj_close = i.get("adj_close") print code, date, open, high, low, close, volume, adj_close day = datetime.datetime.strptime(date, "%Y-%m-%d") year = int(day.strftime('%Y')) mon = int(day.strftime('%m')) day1 = int(day.strftime('%d')) quotes.append((matplotlib.dates.date2num(datetime.datetime(year, mon, day1)), open, high, low, close)) print code, date,"----------------------------------------"def get_stock_list(code): l = stocks.find({"code":code}).limit(1) print type(l) for i in l: name = i.get("name") return nameif __name__ == '__main__': code = "600004" date = "2003-09-01" init_mongodb_list() name = get_stock_list(code) conn_list.close() #print name init_mongodb_k() get_k_ri(code, date,quotes) conn_k.close() show(code, name, quotes)
0 0
- 读取mongodb 显示日k 指定日期近500条 不能超过800条
- python 读取csv文件 日k显示 最多700条
- 数据库 对表增加触发器 控制修改,删除不能超过指定数目,比如不能修改超过1条数据
- 读取文件第k条记录打印到屏幕
- 《Java编程技巧1001条》361条:小心指定2000年后的日期,
- asp 读取记录 从指定第几条读到几条 方法
- 日课十二条
- 日期控件 指定日
- 2017-07-18日看登录日志,显示十条:最早的是:2014-04-07 17:09,应该就是注册日期吧
- C# 读取Access多条数据并显示出来
- 读取条空比例
- DIV滚动条显示
- 分页,显示条数
- CDHtmlDialog显示滚动条
- CDHtmlDialog显示滚动条
- word显示条直线
- CDHtmlDialog显示滚动条
- table 显示 滚动条
- Log4J和springMVC
- CSDN-markdown编辑器语法——字体、字号与颜色
- 收藏的一些网页
- 分页JS
- cube上显示一张贴图
- 读取mongodb 显示日k 指定日期近500条 不能超过800条
- JS this 的使用 隐藏显示某段DIV
- 安卓之ANR
- sparksql实现多表关联查询
- 使用JDBC连接数据库
- mysql获取所有表的所有字段名
- 最大公约数-----欧几里德算法
- java多线程
- ECMAScript6 let 与 var