当前位置: 首页 > 面试题库 >

Matplotlib烛台在几分钟内

呼延承平
2023-03-14
问题内容

下午好,

我想看看你们中谁能在几分钟内帮我做个蜡烛图。我已经设法在几天内绘制出它们的图形,但是我不知道如何在几分钟内完成它们。

附加代码。

import numpy as np
import matplotlib.pyplot as plt
from matplotlib import dates, ticker
import matplotlib as mpl
from mpl_finance import candlestick_ohlc

mpl.style.use('default')

data = [('2017-01-02 02:00:00', '1.05155', '1.05197', '1.05155', '1.0519'),
    ('2017-01-02 02:01:00', '1.05209', '1.05209', '1.05177', '1.05179'),
    ('2017-01-02 02:02:00', '1.05177', '1.05198', '1.05177', '1.05178'),
    ('2017-01-02 02:03:00', '1.05188', '1.052', '1.05188', '1.052'),
    ('2017-01-02 02:04:00', '1.05196', '1.05204', '1.05196', '1.05203'),
    ('2017-01-02 02:06:00', '1.05196', '1.05204', '1.05196', '1.05204'),
    ('2017-01-02 02:07:00', '1.05205', '1.0521', '1.05205', '1.05209'),
    ('2017-01-02 02:08:00', '1.0521', '1.0521', '1.05209', '1.05209'),
    ('2017-01-02 02:09:00', '1.05208', '1.05209', '1.05208', '1.05209'),
    ('2017-01-02 02:10:00', '1.05208', '1.05211', '1.05207', '1.05209')]

ohlc_data = []

for line in data:
    ohlc_data.append((dates.datestr2num(line[0]), np.float64(line[1]), np.float64(line[2]), np.float64(line[3]), np.float64(line[4])))

fig, ax1 = plt.subplots()
candlestick_ohlc(ax1, ohlc_data, width = 0.5, colorup = 'g', colordown = 'r', alpha = 0.8)

ax1.xaxis.set_major_formatter(dates.DateFormatter('%d/%m/%Y %H:%M'))
ax1.xaxis.set_major_locator(ticker.MaxNLocator(10))

plt.xticks(rotation = 30)
plt.grid()
plt.xlabel('Date')
plt.ylabel('Price')
plt.title('Historical Data EURUSD')
plt.tight_layout()
plt.show()

问题答案:

如此接近,但只有反复试验才能使您更进一步。糟糕的文档不是很好吗?

只需除以width一天中的分钟数即可。完整的代码,供您在下面复制和粘贴,但我所做的只是更改width = 0.5width = 0.5/(24*60)

import numpy as np
import matplotlib.pyplot as plt
from matplotlib import dates, ticker
import matplotlib as mpl
from mpl_finance import candlestick_ohlc

mpl.style.use('default')

data = [('2017-01-02 02:00:00', '1.05155', '1.05197', '1.05155', '1.0519'),
    ('2017-01-02 02:01:00', '1.05209', '1.05209', '1.05177', '1.05179'),
    ('2017-01-02 02:02:00', '1.05177', '1.05198', '1.05177', '1.05178'),
    ('2017-01-02 02:03:00', '1.05188', '1.052', '1.05188', '1.052'),
    ('2017-01-02 02:04:00', '1.05196', '1.05204', '1.05196', '1.05203'),
    ('2017-01-02 02:06:00', '1.05196', '1.05204', '1.05196', '1.05204'),
    ('2017-01-02 02:07:00', '1.05205', '1.0521', '1.05205', '1.05209'),
    ('2017-01-02 02:08:00', '1.0521', '1.0521', '1.05209', '1.05209'),
    ('2017-01-02 02:09:00', '1.05208', '1.05209', '1.05208', '1.05209'),
    ('2017-01-02 02:10:00', '1.05208', '1.05211', '1.05207', '1.05209')]

ohlc_data = []

for line in data:
    ohlc_data.append((dates.datestr2num(line[0]), np.float64(line[1]), np.float64(line[2]), np.float64(line[3]), np.float64(line[4])))

fig, ax1 = plt.subplots()
candlestick_ohlc(ax1, ohlc_data, width = 0.5/(24*60), colorup = 'g', colordown = 'r', alpha = 0.8)

ax1.xaxis.set_major_formatter(dates.DateFormatter('%d/%m/%Y %H:%M'))
ax1.xaxis.set_major_locator(ticker.MaxNLocator(10))

plt.xticks(rotation = 30)
plt.grid()
plt.xlabel('Date')
plt.ylabel('Price')
plt.title('Historical Data EURUSD')
plt.tight_layout()
plt.show()


 类似资料:
  • 烛台图表用于显示价值差异的开盘价和收盘价,通常用于表示股票。 在本节中,我们将讨论以下类型的基于烛台的图表。 Sr. No. 图表类型/描述 1 Basic Candlestick 基本烛台图表。 2 Candlestick with customized colors 自定义烛台图表。

  • 我使用。一切正常,但我想在实际图表上添加线条和形状。当我在matplotlib中使用普通类型的图表时。我会做: 以0.0005价格水平从到(待定义)绘制一条水平线。但由于我使用的是烛台法,我真的不知道如何继续。。。 也可以画和填充三角形吗?

  • 以下是基本CandleStick图表的示例。 我们已经在Google Charts Configuration Syntax一章中看到了用于绘制图表的配置 。 现在,让我们看一个CandleStick图表的示例。 配置 (Configurations) 我们使用了CandlestickChart类来显示基本的CandleStick图表。 // Candlestick chart Candlesti

  • 问题内容: 我想尝试通过以下方式使用@Schedule批注: 根据日志,CronService运行良好,但是计划的任务“ runsEveryMinute”不起作用。 使用EJB计划任务如何工作? 问题答案: 按照该Javadoc中的注释,默认值是: 除小时,分钟和秒外的所有字段;和 默认情况下为小时,分钟和秒。 通过将小时值保留为默认值,它要求计时器在午夜之后每分钟运行一小时(即00:00、00:

  • 几分钟后,出现此错误。当我执行另一个查询时,它工作正常。 这是错误: 这是我的配置文件:

  • 大多数财务图表库使用一些规则来为蜡烛着色: 如果<代码>关闭 jFreeChart似乎有自己的着色规则,可以更改它们。默认情况下,该图表如下所示(某些颜色已更改): 如您所见,可以更改蜡烛、背景、绘图边框等的颜色。 我想在图表中实现规则1和2(上面)。可能吗? 结果应该是这样的: 这是我目前在示例中使用的烛台: 似乎只需将设置为并绘制颜色不变即可。 但主要问题仍然存在: > 在jFreeChart