在IJulia工作。拼命想要制作自定义色彩图。 试过这条线:
matplotlib.colors.ListedColormap([(1,0,0),(0,1,0),(0,0,1)],"A")
导致以下错误
类型PyObject在加载In [16]时,在从第1行开始的表达式中没有字段颜色
这显然意味着我不能直接使用matplotlib,而只能使用PyPlot中的函数。
我不能使用导入涉及matplotlib(因为这在IJulia中无效)。 我注意到其他人在类似问题上有所帮助,但这并不能解决我的问题。
答案 0 :(得分:3)
通过使用PyPlot用于包装matplotlib的PyCall包,您可以获得如下颜色映射:
using PyCall
@pyimport matplotlib.colors as matcolors
cmap = matcolors.ListedColormap([(1,0,0),(0,1,0),(0,0,1)],"A")
为了访问PyObject中的字段,您需要使用以下符号索引对象:
cmap[:set_over]((0,0,0))
这相当于python中的cmap.set_over((0,0,0))
。有关如何使用PyPlot绘制不同类型绘图的其他好例子,请参阅以下示例:https://gist.github.com/gizmaa/7214002
答案 1 :(得分:0)
您不需要使用PyCall直接调用Python(当然,这是一个选项)。您还可以使用PyPlot
的{{1}}构造函数构建来自(r,g,b)数组的颜色映射或Julia ColorMap
包中定义的颜色数组。请参阅PyPlot ColorMap documentation。例如:
Color