我有6个不同的数据表,即
df1, df2, df3, df4, df5, df6
。
我正在尝试为每个数据表创建一个包含 6 个等高线图的大图。以下是每个 df 的一些规格:
每个表有 10000 行,所有 z 值都不同。
我想使用可以应用于所有 6 个数据表的单一色标(或图例)。因此,对于每个等高线图,我指定了等高线的起点和终点,如下所示。
对于
df1
:df1_plot <- plot_ly(x = df1$x, y = df1$y, z = df1$z, type = 'contour', autocontour = F, colorscale = 'Greens', contours = list(start = 10, end = 400, ncontours = 25)
但是,问题在于,与
z
中的值相比,df1
中的 df6
值太小。因此,当我绘制 df1
时,我只是得到一个完全没有轮廓的图,如下图所示:
为了解决这个问题,我正在考虑聚合多个色阶。例如,深蓝色到浅蓝色为0 - 50,浅蓝色到绿色为50 - 100,绿色到黄色为100 - 150,黄色到橙色为150 - 200,等等。另一个例子可以是下面的图片:
我怎样才能实现这个目标?谢谢!
我不明白为什么绘图是空的以及改变颜色如何解决这个问题。但关于你的问题,你可以做类似的事情
colorscale = list(list(0, "blue"), list(0.5, "white"), list(1, "red"))
控制颜色条,也可以设置调色板的名称
brewer.pal()
,例如
colorscale = "RdYlBu"