- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
全部
我对 HV 完全陌生(实际上是从昨晚开始)所以要温柔。
我在玩 HV,所以我构建了一个热图,其中 x 和 y 是平均值和标准偏差 (sigma) 的一些值。然后对于平均值和西格玛的每个组合,我计算变异系数(只是西格玛和平均值的比率)。我已经成功做到了。
import pandas as pd
import numpy as np
import holoviews as hv
from holoviews import opts
hv.extension('bokeh')
# here the mean and std vales are given (hardcoded)
mu = [-1, 5, 10]
std = [10, 50, 90]
# make an empty list to append coefficient of variation
cov = []
# calculate the coefficient of variation c_v = std/mu for all combos of std and mu
for i in range(0, len(mu)):
for j in range(0, len(std)):
cov.append(std[j] / mu[i])
# to place the values of std and mean on a 2D plot, values have to be
# repeated in a certain way, therefore
std_rep = np.tile(std, 3)
mu_rep = np.repeat(mu, 3)
sigma = std_rep.astype(str)
mean = mu_rep.astype(str)
###heatmap entries per cell have to be strings, like this
sigma2=['10', '50', '90', '10', '50', '90', '10', '50', '90']
mean2 = ['-1', '-1', '-1', '5', '5', '5', '10', '10', '10']
################################################
# make heatmap
heatmap = hv.HeatMap((sigma, mean, cov))
# declare tap stream with heatmap as source and initial values
posxy = hv.streams.Tap(source=heatmap, x='sigma', y='mean')
# Define function to compute histogram based on tap location
def tap_histogram(x, y):
x_vals = np.arange(-100, 100, 0.1)
y_vals = norm(mean, sigma)
plt.plot(x_vals, y_vals.pdf(x_vals))
return hv.Curve((x_vals, y_vals.pdf(x_vals)), mean, sigma)
(heatmap).opts(opts.HeatMap(cmap='RdBu', tools=['hover', 'tap'], colorbar=True,
width=500, height=500, toolbar='above', clim=(-100,15),
title ='coefficient of variation',
fontsize={'xticks': '10pt', 'yticks': '10pt',
'xlabel': '10pt', 'ylabel': '10pt',
'title': '15pt'},
xlabel='STD', ylabel='MEAN'
))
#cmap examples cmpap = 'RdBu', 'Viridis', etc
# more at http://holoviews.org/user_guide/Colormaps.html
最佳答案
感谢 AurelienSciarra,在 https://discourse.holoviz.org/t/plot-a-gaussian-connected-to-the-heatmap-by-tap-option/1867 上回答了这个问题
import pandas as pd
import numpy as np
import holoviews as hv
from holoviews import opts
hv.extension('bokeh')
from bokeh.models import HoverTool
from holoviews import streams
# here the mean and std vales are given (hardcoded)
mu = [-1, 5, 10]
std = [10, 50, 90]
# make an empty list to append coefficient of variation
cov = []
# calculate the coefficient of variation c_v = std/mu for all combos of std and mu
for i in range(0, len(mu)):
for j in range(0, len(std)):
cov.append(std[j] / mu[i])
# to place the values of std and mean on a 2D plot, values have to be
# repeated in a certain way, therefore
std_rep = np.tile(std, 3)
mu_rep = np.repeat(mu, 3)
sigma = std_rep.astype(str)
mean = mu_rep.astype(str)
###heatmap entries per cell have to be strings, like this
sigma2=['10', '50', '90', '10', '50', '90', '10', '50', '90']
mean2 = ['-1', '-1', '-1', '5', '5', '5', '10', '10', '10']
################################################
# make heatmap
heatmap = hv.HeatMap((sigma, mean, cov))
# declare tap stream with heatmap as source and initial values
posxy = hv.streams.Tap(source=heatmap, x=10, y=10)
# Define function to compute histogram based on tap location
def tap_histogram(x, y):
points = np.random.normal(int(y), int(x),1000)
h= hv.Distribution(points).opts(width=500, height=500)
return h
hoverCustom = HoverTool(tooltips={'mean':'@x','std':'@y','cv':'@z'})
heat=(heatmap).opts(opts.HeatMap(cmap='RdBu', tools=[hoverCustom, 'tap'], colorbar=True,
width=500, height=500, toolbar='above', clim=(-100,15),
title ='coefficient of variation',
fontsize={'xticks': '10pt', 'yticks': '10pt',
'xlabel': '10pt', 'ylabel': '10pt',
'title': '15pt'},
xlabel='STD', ylabel='MEAN'
))
tap_dmap = hv.DynamicMap(tap_histogram, streams=[posxy])
(heat+tap_dmap)
关于python - 使用 HoloViews+Bokeh 绘制连接到 HeatMap 的高斯,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66244053/
我正在使用 Java 类 HeatMap(作者: http://www.mbeckler.org/heatMap/ )为我的矩阵生成热图。我想实现一个鼠标监听器,当鼠标位于图像(热图)上的某个位置时,
我正在绘制热图,我不希望行名和列名在 x 轴和 y 轴上可见。 所以我使用了下面的代码: heatmap.2(data, xlab="PROTEINS", ylab="DRUGS", labRow=F
很抱歉,如果这个问题已在其他地方得到解答,但我无法找到解决方案...... 我有scatterplot数据、x和y以及颜色数据c(所有这些都是向量)。 x = rand(100,1); y = ran
我想从我的数据表中过滤掉 FTE 值为 0 的行,但前提是从我的热图中选择了一个框。如果未选择任何框,则数据表应显示 FTE 值为 0 的行。 我找到了这个:https://groups.google
我有一个制表符分隔的数据文本文件 (Data.txt),其中包含 13 列和 90 行。它有一个标题行(样本值),第一列是样本名称。 当我将数据加载到数据矩阵时,我的第一列样本名称没有显示。它们都被
我正在尝试在 Holoviews 中为每个点生成一个具有自定义颜色值的热图,以便指定不同的 alpha 颜色值。 目前我正在生成两个具有不同 alpha 值的 Holoviews 图并像这样叠加它们:
这个问题在这里已经有了答案: How to create pre-annotated rowside column in heatmap.2 (2 个回答) 4年前关闭。 我有以下 MWE,我在其中制
我正在尝试使用 heatmap.2 在一定范围内绘制值矩阵。列是范围(例如,0 到 100)。列标签太多,无法清晰显示。有没有办法显示每第 N 个(0、10、20 等)?我希望显示所有值,但我不希望它
我正在绘制一个 759*12 双矩阵 twoway.expr.005使用 heatmap.2() library(gplots) dist2 <- function(x, ...){as.dist(1
我有关于包裹的问题 gplots .我想使用功能heatmap.2因此我想将颜色键中的对称点从 0 更改为 1。通常在 symkey=TRUE 时然后您使用 col=redgreen() ,创建一个颜
我正在尝试将 heatmap.js 与 Google map 集成以进行一些可视化工作。我提到了这个: http://www.patrick-wied.at/static/heatmapjs/exam
我生成了这样的热图: X 轴和 Y 轴标签未完全显示。我的代码在这里: heatmap.2(x,col=blueyelred,colsep=c(1:6),rowsep=(1:62),
我有以下代码来显示热图上方的颜色键。但是颜色键在热图的顶部(稍微向右移动)并不精确。有谁知道如何使颜色不改变?另外,如何删除热图右侧的空白?谢谢。 library(gplots) heatmap.2(
有谁知道为什么我的 heatmap.2 结果有奇怪的颜色——绿松石不属于我的红/黑/绿调色板?绿松石似乎是指基于样本聚类的信息(我“错误”编辑出的行树状图),而不是基于特征聚类的信息。这是怎么回事?
我正在尝试使用 heatmap.2(下面的代码)生成一些对数转换的倍数变化数据图。 我想按照最后一列中的值(从大到小)对热图中的行进行排序。这些行正在自动排序(我不确定“幕后”使用的精确计算),如图所
我正在使用 github 中 pa7 的 heatmap.js 库成功制作一些热图 http://www.patrick-wied.at/static/heatmapjs/example-heatma
所以我需要在 seaborn 中创建大量具有不同数据尺度的热图。一些范围从 0-100 和一些 +100 到 -100。我需要做的是在所有图表中保持相同的颜色分级。因此,例如,我希望任何低于 0 的东
我正在为我的应用程序尝试热图,但我认为我的代码中缺少一些东西,因为它不起作用。 JSFiddle 下面是我的代码: var domElement = document.getE
首先,我正在使用 ReactJS 和 heatmap.js 库。 用作 heatmap.js 入口点的 HTMLDivElement 应该是响应式的。在每次调整窗口大小时,它都会根据当前窗口大小进行调
我有一个简单的传单热图示例,其中包含数据(超过 10,000 行)。但它没有产生应有的梯度热图。 演示在 http://shafiqmustapa.my/test.html heatmap没有根据va
我是一名优秀的程序员,十分优秀!