- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我使用的是 Bokeh 0.12.15 版本,它生成了一个很棒的 hexbin 图。我想知道如何轻松找到每个六边形值的索引?
例如下面的代码 ( https://docs.bokeh.org/en/latest/docs/gallery/hexbin.html ):
import numpy as np
from bokeh.io import output_file, show
from bokeh.models import HoverTool
from bokeh.plotting import figure
n = 500
x = 2 + 2*np.random.standard_normal(n)
y = 2 + 2*np.random.standard_normal(n)
p = figure(title="Hexbin for 500 points", match_aspect=True,
tools="wheel_zoom,reset", background_fill_color='#440154')
p.grid.visible = False
r, bins = p.hexbin(x, y, size=0.5, hover_color="pink", hover_alpha=0.8)
p.circle(x, y, color="white", size=1)
hover = HoverTool(tooltips=[("count", "@c"), ("(q,r)", "(@q, @r)")],
mode="mouse", point_policy="follow_mouse", renderers=[r])
p.add_tools(hover)
output_file("hexbin.html")
show(p)
我想为每个 hexbin 找到其中包含的元组 (x,y) 的索引
谢谢
最佳答案
编辑:好的,我刚刚意识到(我认为)您在问一个不同的问题。要找出每个图 block 中原始点的索引,您基本上必须重新创建 hexbin
本身所做的事情:
In [8]: from bokeh.util.hex import cartesian_to_axial
In [8]: import pandas as pd
In [9]: q, r = cartesian_to_axial(x, y, 0.5, "pointytop")
In [10]: df = pd.DataFrame(dict(r=r, q=q))
In [11]: groups = df.groupby(['q', 'r'])
In [12]: groups.groups
Out[12]:
{(-4, -3): Int64Index([272], dtype='int64'),
(-4, 0): Int64Index([115], dtype='int64'),
(-4, 3): Int64Index([358], dtype='int64'),
(-4, 4): Int64Index([480], dtype='int64'),
(-3, -1): Int64Index([323], dtype='int64'),
(-3, 2): Int64Index([19, 229, 297], dtype='int64'),
...
(11, -5): Int64Index([339], dtype='int64'),
(12, -7): Int64Index([211], dtype='int64')}
groups
字典中每个条目的每个键是图 block 的 (q,r)
轴向十六进制坐标,值是索引列表该瓷砖中的点数。
旧答案
该信息在返回的 bins
DataFrame 中:
In [3]: bins.head()
Out[3]:
q r counts
0 -4 -3 1
1 -4 0 1
2 -4 3 1
3 -4 4 1
4 -3 -1 1
这里的q
和r
是Axial Hex Grid Coordinates .如果你想要十六进制图 block 中心的笛卡尔 x
和 y
坐标,你可以使用 axial_to_cartesian
功能。
关于python - Bokeh hexbin - 找到每个六边形的原始索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49853567/
我正在 basemap 图像上制作六边形热图的动画,但无法弄清楚如何在开始下一帧之前删除先前的六边形。我想用一些累积来制作动画,但以选定的时间间隔重置(我的数据有时间维度,我想显示给定年份的所有点,日
我正在绘制高密度点的散点图。我使用了 Hexbin 包并成功绘制了数据。颜色不漂亮,我被要求遵循标准颜色。我想知道 R 是否支持它。图像显示了我的输出(右)和想要的颜色(左)。 例子: x <
我总是发现一些奇怪的白色水平虚线,这些虚线似乎出现在我在 R 环境中使用 ggplot2 创建的每个 hexbin 密度图上的垂直相邻六边形之间的边界上。他们当然不属于那里......这种行为(错误)
我正在寻找一种方法来微调 hexbin 图中单个细胞的颜色。 我尝试使用来自 PolyCollection 的方法 set_facecolors改变单个单元格的颜色,但这似乎不起作用。 示例:这应该会
我一直在尝试寻找在 hexbin 图上添加黄土回归线的方法。到目前为止,我没有任何成功......有什么建议吗? 我的代码如下: bin<-hexbin(Dataset$a, Dataset$b, x
我有以下代码,可生成下图 import numpy as np np.random.seed(3) import pandas as pd import matplotlib.pyplot as pl
我有一个如下所示的数据框: df = pd.DataFrame( {"x" : [2,4,5,8,5,4,1,6,8,7], "y" : [2,4,1,3,7,8,9,3,6,9],
我正在尝试学习如何使用 d3.js hexbin 插件。 我从这个例子开始:http://bl.ocks.org/mbostock/4248145 ,我正在对其进行调整。 我有一个介于 [0,0] 和
以下代码片段基本上就是这个示例 https://bl.ocks.org/mbostock/4248145但具有自定义数据点。无论我如何缩放或修改点数组,六边形始终位于左上角,尽管分布似乎显示正确。 我
我使用的是 Bokeh 0.12.15 版本,它生成了一个很棒的 hexbin 图。我想知道如何轻松找到每个六边形值的索引? 例如下面的代码 ( https://docs.bokeh.org/en/l
我有两个数组,x 和 y,它们的值都在明确定义的范围内。我能够创建一个 hexbin 图 ( see image ),但是,我现在想对这些分布进行归一化并在它们周围绘制等高线图。我对每个 hexbin
我想用 matplotlib 制作 x y 数据的多个 hexbin 密度图,类似于这个: http://matplotlib.org/1.4.0/examples/pylab_examples/he
我在 hexbin 图中有两个分布,如图所示: 一个分布的最大值约为 4000,而另一个分布的最大值约为 2500。因此绘图颜色不同。 我在想,如果我知道 hexbin 图的最大值,我就可以对其进行归
我有一些空间分布的数据。我正在用 matplotlib.pyplot.hexbin 绘制它并想更改“背景”(即零值)颜色。下面显示了一个示例 - 我选择的颜色图是 matplotlib.cm.jet:
我正在对一个非常密集的大型数据集进行一些 KMeans 聚类,并且我正在尝试找出可视化聚类的最佳方法。 在 2D 中,它看起来像 hexbin会做得很好,但我无法在同一个数字上重叠绘制集群。我想用 h
这与另一个问题有关:Plot weighted frequency matrix . 我有这个图形(由下面的 R 代码生成): #Set the number of bets and number o
有没有办法根据频率增加 pyplot.hexbin 中六边形的相对大小?我只能看到关键字参数的 binsize,它会影响十六进制的数量,但不会影响它们的大小。 但是在this article (在“多
我有这个非常简单的代码,它绘制了一个由 100 个点 (10,10) 组成的列表,这些点都是相同的。不幸的是,我收到一条警告和一张空白图表。 我的代码: import matplotlib.pyplo
这个问题在这里已经有了答案: Hexbin plot in PairGrid with Seaborn (1 个回答) 关闭 3 年前。 我想为我的 DataFrame 中的所有列绘制成对图;然而,
我在创建两个 matplotlib.pyplot 之间的差异图时遇到了问题hexbin plots,意思是获取每个对应hexbin的值差先而后创差异hexbin map 。 在这里举一个我的问题的简单
我是一名优秀的程序员,十分优秀!