如何获得纯色填充' tripcolor'在matplotlib中

时间:2017-12-05 07:42:40

标签: python matplotlib triplot

课程' tripcolor'在matplotlib中提供了一个非常强大的工具来为这些2D三角形创建轮廓样式的绘图,如下所示:

plt.tripcolor(x,y,triangles,vars,cmap='PuOr')

虽然有许多类型的定义色图用于使用,但现在我找不到适合这些三角形的纯色填充方法。有谁知道怎么做?谢谢你告诉我。

1 个答案:

答案 0 :(得分:0)

感觉相当奇怪,但似乎最简单的解决方案是使用单一颜色填充tripcolor图是创建一个颜色图,其中只有一种颜色并将其提供给tripcolor。

import matplotlib.pyplot as plt
import numpy as np
import matplotlib.colors

xy = np.asarray([ [-0.01, 0.9], [-0.1, 0.8], [-0.05, 0.6], [-0.08, 0.9]])
triangles = np.asarray([[3, 2, 0]  , [3, 1, 2],   [ 0, 2, 1] , [0, 1, 2]])

# generate some array of length same as xy
c = np.ones(len(xy))
# create a colormap with a single color
cmap = matplotlib.colors.ListedColormap("limegreen")
# tripcolorplot with a single color filling:
plt.tripcolor(xy[:,0],xy[:,1],triangles, c, edgecolor="k", lw=2, cmap=cmap)
plt.show()

enter image description here