我正在试着在一个新的数据线和股票 X轴应该是日期,y轴是股票的收盘价。在
下面是我的代码示例:
data = pd.DataFrame({'Symbol' : ['AMBA','FB','WWD','AMBA','FB','WWD','AMBA','FB','WWD','AMBA','FB','WWD','AMBA','FB','WWD','AMBA','FB','WWD',],
'Previous_Close' : [10,20,30,10,20,30,10,20,30,10,20,30,10,20,30,10,20,30,],
'Date' : pd.to_datetime(['01/01/16', '01/01/16', '01/01/16', '01/02/16', '01/02/16', '01/02/16', '01/03/16', '01/03/16', '01/03/16', '01/04/16',
'01/04/16', '01/04/16', '01/05/16', '01/05/16', '01/05/16', '01/06/16', '01/06/16', '01/06/16'], format = '%m/%d/%y')})
Symbols = [sym for sym in data.Symbol.unique()]
Dates = [date for date in data.Date.unique()]
format_dates = [date.strftime('%b%d_%y') for date in dates]
colors = ['Darkred', 'Orange', 'Navy']
output_notebook()
TOOLS = ['hover','pan','box_zoom','resize', 'save', 'reset']
# CREATE FIGURE
p = figure(width = 800, height = 600, tools = TOOLS)
cnum = 0
# PLOT
for sym in Symbols:
# plot stock closing price
p.line(range(len(dates)), data[data.Symbol==sym].Previous_Close, color = colors[cnum])
# add stock symbol as text label to end of line
p.text(len(Symbols), data[data.Symbol==sym].Previous_Close.iloc[-1], [sym],
text_color = colors[cnum], text_font_size = '10pt')
cnum +=1
show(p)
很明显,数据是在这里编出来的,但想法是一样的。我只想将x记号标签设置为格式化的日期名称。在Pyplot中,我只需要:
^{pr2}$我尝试过将x轴类型设置为'datetime',但这只给了我毫秒。我尝试过使用DateTimeFormatter(),但要么我不知道如何使用它,要么它不起作用(可能是前者)。在
这会将x轴更改为毫秒: p=图形(宽度=800,高度=600,x轴_type='datetime',刀具=刀具)
cnum = 0
# PLOT
for sym in Symbols:
# NO CHANGE TO X ARG
p.line(range(len(dates)), data[data.Symbol==sym].Previous_Close, color = colors[cnum])
这将x记号从1970年改为数十年: p=图形(宽度=800,高度=600,x轴_type='datetime',刀具=刀具)
cnum = 0
# PLOT
for sym in Symbols:
# CHANGE X ARG TO DATETIME DATES
p.line(dates, data[data.Symbol==sym].Previous_Close, color = colors[cnum])
使用:
看来你的熊猫索引有麻烦了。我认为这个准则应该有效:
输出如下:
相关问题 更多 >
编程相关推荐