我试图在x-y平面上绘制点,并使其大小反映第三个维度z。使用hvplots似乎完全有可能,因为我在他们的网站上发现了以下代码,展示了如何执行此操作:
np.random.seed(10)
data = np.random.rand(100,4)
points = hv.Points(data, vdims=['z', 'size'])
(points + points[0.3:0.7, 0.3:0.7].hist()).opts(
opts.Points(color='z', s=dim('size')*50))
不幸的是,当我在以下数据中尝试使用该数据时:
show = df.hvplot.points('x', 'y', label='Test{}'.format(Y), marker='+', size='z')
我得到了错误:
“警告:param.PointPlot1180947:无法为'size'选项声明样式映射并声明size_index;忽略size_index。”
很明显,这不使用大小索引,尽管该图仍然可以处理大小相同的点。
如果我尝试使用示例中使用的语法:
show = df.hvplot.points('x', 'y', label='Test{}'.format(Y), marker='+', s=dim('z'))
我收到消息“未定义昏暗”。他们似乎没有在hvplots网站上定义它,这似乎是一个可以接受的论点,所以我不知道那里发生了什么。
答案 0 :(得分:0)
对不起,我找到了答案。出现此错误是因为我试图覆盖多个图,并且如果您已经确定点的大小将取决于第三维,则显然您无法在复合图的选项中设置“高度”和“宽度”。