Matplotlib轮廓没有数据坐标

时间:2019-06-12 07:23:22

标签: python matplotlib

我对Matplotlib等高线图有疑问。我有图形大小(100x100)。 CSV的所有“重要”值均大于0时应为红色。每个值<0均应为蓝色。

我的问题是,是否有可能没有白色的数据(CSV中没有坐标)的地方。现在,它正在从附近的点绘制一些平均颜色。

这是我目前遇到的情况: This is situation which I have right now.

这是通过点可视化的数据: This is data visualized by points

我需要的这类图形: This type of graph that I need

是否可以使用Contour获得相似的图形?

这是我的代码:

import numpy as np
import matplotlib.pyplot as plt
import matplotlib.mlab as ml
import pandas as pd

csv_filename = 'data.csv'
df = pd.read_csv(csv_filename)

data = [df.x_pos, df.y_pos]
x = df.x_pos
y = df.y_pos
z = df.importance


ny, nx = 1000, 1000
xmin, xmax = 0, 100
ymin, ymax = 0, 100

xi = np.linspace(xmin, xmax, nx)
yi = np.linspace(ymin, ymax, ny)


zi = ml.griddata(x, y, z, xi, yi, interp='linear')

plt.contour(xi, yi, zi, 1, linewidths = 0, colors = 'k')
plt.pcolormesh(xi, yi, zi, vmin=-1, vmax=1, cmap = plt.get_cmap('bwr'))

#plt.scatter(x, y, marker = 'o', c = z, s = 10, vmin=-1, vmax=1, cmap = plt.get_cmap('bwr'))
plt.colorbar() 

plt.xlim(xmin, xmax)
plt.ylim(ymin, ymax)
plt.show()

**这是CSV数据示例:**

x_pos,y_pos,importance
32,-48,0.87487145766094
32,52,0.43743572883047
32,68,1.127350663193

完整的CSV数据在这里:https://pastebin.com/mYS6LSyG

0 个答案:

没有答案