- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我需要使用 Pandas DataFrame TimeSeries 列 (df_all.ts) 作为我的 X 轴来创建 MatplotLib 热图 (pcolormesh)。
如何将 Pandas TimeSeries 列转换为可在 np.meshgrid(x, y) 函数中用作 X 轴的内容以创建热图?解决方法是使用与 pandas 列中相同的参数创建 Matplotlib drange,但有没有简单的方法?
x = pd.date_range(df_all.ts.min(),df_all.ts.max(),freq='H')
xt = mdates.drange(df_all.ts.min(), df_all.ts.max(), dt.timedelta(hours=1))
y = arange(ylen)
X,Y = np.meshgrid(xt, y)
最佳答案
我不知道你所说的时间序列的热图是什么意思,但对于数据框,你可以按如下方式进行:
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from itertools import product
from string import ascii_uppercase
from matplotlib import patheffects
m, n = 4, 7 # 4 rows, 7 columns
df = pd.DataFrame(np.random.randn(m, n),
columns=list(ascii_uppercase[:n]),
index=list(ascii_uppercase[-m:]))
ax = plt.imshow(df, interpolation='nearest', cmap='Oranges').axes
_ = ax.set_xticks(np.linspace(0, n-1, n))
_ = ax.set_xticklabels(df.columns)
_ = ax.set_yticks(np.linspace(0, m-1, m))
_ = ax.set_yticklabels(df.index)
ax.grid('off')
ax.xaxis.tick_top()
可选地,要在每个正方形的中间打印实际值,并带有一些阴影以便于阅读,您可以这样做:
path_effects = [patheffects.withSimplePatchShadow(shadow_rgbFace=(1,1,1))]
for i, j in product(range(m), range(n)):
_ = ax.text(j, i, '{0:.2f}'.format(df.iloc[i, j]),
size='medium', ha='center', va='center',
path_effects=path_effects)
关于python - 使用 pandas TimeSeries 创建热图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20520246/
我想使用现有 TimeSerie 的索引和另一个具有不同时间索引的 TimeSerie 的值来创建 DataFrame 或 TimeSerie。时间序列看起来像; DT 2018-01-02
我正在尝试使用 Google 监控 REST API(代码示例)获取性能数据。但它返回空数据“{}”。还观察到它正在重新调整响应的 ContentEncoding 为“gzip”类型。 private
我想从某个小时开始以每天(正好 24 小时)的频率重新采样 TimeSeries。 喜欢: index = date_range(datetime(2012,1,1,17), freq='H', pe
我目前正在使用 Azure 时序见解来聚合我的数据。它为我提供了一种生成日期直方图的方法,我可以在其中指定搜索跨度和存储桶大小。然而,buckets的结果并不符合我的预期。 例如,如果搜索范围是从 2
我目前正在尝试为股票价格烛台做一个简单的实现。假设我们有一只名为 XYZ 的股票。该股票收到一系列价格(没有特定频率),(例如)看起来像:XYZ: [10.2, 10.7, 12, 11 ....]。
我有这个jsfiddle:http://jsfiddle.net/Ra2xS/42/ 。我完全不知道哪里出了问题。谁能看一下代码并提出更正建议吗? var dim = {"width":590,"he
如何找到时间序列中最大的序列。例如,我有一个像这样的 DataFrame: index Value 1-1-2012 10 1-2-2012 14 1-3-2012 15 1-4
这是我的代码: function myFunction() { // do stuff } async.timesSeries(100, myFunction); doSomethingE
我已经在谷歌上搜索了一段时间,但没有找到合适的解决方案。我有一个包含几百万行的时间序列,其结构相当奇怪: VisitorID Time VisitDuration 1
作为 AchartEngine API 的 TimeSeries Construstor,只接受字符串作为参数,没有其他参数作为比例参数传递。那么我将如何在两种不同的比例下使用它 谢谢 最佳答案 我想
TimeSerial 函数 返回一个 Date 子类型的 Variant,含有指定时、分、秒的时间。 TimeSerial(hour,minute, second) 参数 hour 其值为
我正在绘制一个金融时间序列(见下文,这里有 1 个月的数据) 我想删除我用红叉等显示的时间段,即星期六。请注意,这些时间段并非所有没有数据的时间段,而只是星期六。 我知道有一些如何消除间隙的例子,例如
我有几年的数据,例如(作为 pandas TimeSeries): 1997-04-02 0.0 1997-04-03 0.0 1997-04-04 2.0 1997-04-0
我有一个 TimeSeries 图表,显示每个日期的一些值,并且有两个系列显示为两条不同的行。 问题是有时一个系列不包含某些特定日期的值。在这种情况下,我假设该行将从本系列的上一点延续到下一点。 不幸
我正在努力思考 Redis 的时间序列规则创建是如何工作的,我很困惑为什么 Redis 会忽略聚合中的最后一项,并且想知道这是否是预期的行为。 我在 redis-cli 中创建了一个示例代码来说明:
使用 Charts package是否可以调整 TimeSeries 图表的笔划宽度? 查看文档/examples我看到折线图显示了一个 strokeWidthPxFn,但我没有在 timeSerie
目前,我的 TimeSeries 图表每 2 秒显示一个位置的温度。 现在,如果我想每 2 秒显示一次降雨指数和温度,我该如何实现? 这是我的代码: import testWeatherService
我必须绘制时间序列图表,其中数据以纳秒为单位。但是,在我当前的实现中,我们的日期轴范围以毫秒为单位。 那么如何将日期轴范围从毫秒更改为纳秒。 谢谢。 :) 最佳答案 这是我在your post上给出的
我从 JfreeChart 开始。我能够创建 OHLC 图表。我想在同一张图表上添加收盘价的平均值。我应该是一个 TimeSeries ?您知道如何混合图表吗? 谢谢 最佳答案 将第二个数据集添加到图
我有一个时间序列索引的 df,频率为 15 分钟,持续 10 年: dat 2004-04-07 00:00:00 4.0 2004-04-07
我是一名优秀的程序员,十分优秀!