散点图上的颜色图
Colour Map on scatter plot
我在一个 csv 文件中有三列,内容如下:
X,Y, Cosine efficiency
989.565,670.17,0.868684456
660.941,-1502.48,0.597998523
685.683,-1491.35,0.600137189
-1454.88,-316.582,0.666894492
-510.86,1016.79,0.870398677
-1350.21,-788.027,0.61601682
-944.034,-1342.79,0.565497692
-966.098,-1327,0.56678693
-1206.4,-1054.63,0.590095562
1004.18,648.067,0.866589585
我可以通过以下方式读取 X 和 Y 值并绘制散点图:
import csv
# Reading data from csv file
with open('my_file.csv') as csvfile:
readCSV = csv.reader(csvfile, delimiter=',')
X = []
Y = []
C = []
for row in readCSV:
X_coordinates = row[0]
Y_coordinates = row[1]
cos_eff = row[2]
X.append(X_coordinates)
Y.append(Y_coordinates)
C.append(cos_eff)
Xcoordinate = [float(X[c]) for c in range(1,len(X))]
Ycoordinate=[float(Y[c]) for c in range(1,len(Y))]
CosineEff=[float(C[c]) for c in range(1,len(C))]
# Plotting the solar field
plt.figure(1)
plt.scatter(Xcoordinate,Ycoordinate, color = 'blue', s=2)
plt.title("Solar field")
plt.xlabel("Position, east-west [m]"); plt.ylabel("Position, east-west [m]")
plt.show()
现在,我想使用色图制作此散点图,该色图使用第三列中的值。
比如第一个点是:989.565,670.17,0.868684456。我已经绘制了 X 和 Y 坐标 - 在本例中为 989.565 和 670.17。但我想使用颜色图将 0.868684456 的值放在绘制的 X 和 Y 值上。
我想使用 Brewer2mpl 或 pcolour,但我不知道从哪里开始。
我可以使用 'colour mapped' 函数在 Origin 上制作彩色地图,但如何在 Python 上制作?
plt.scatter(x_vals, y_vals, c = z_vals, cmap = 'rainbow')
您将想要尝试添加 s= 并为点选择合适的大小。还有一个漂亮的colormap set called cmocean,您可能要考虑安装
我在一个 csv 文件中有三列,内容如下:
X,Y, Cosine efficiency
989.565,670.17,0.868684456
660.941,-1502.48,0.597998523
685.683,-1491.35,0.600137189
-1454.88,-316.582,0.666894492
-510.86,1016.79,0.870398677
-1350.21,-788.027,0.61601682
-944.034,-1342.79,0.565497692
-966.098,-1327,0.56678693
-1206.4,-1054.63,0.590095562
1004.18,648.067,0.866589585
我可以通过以下方式读取 X 和 Y 值并绘制散点图:
import csv
# Reading data from csv file
with open('my_file.csv') as csvfile:
readCSV = csv.reader(csvfile, delimiter=',')
X = []
Y = []
C = []
for row in readCSV:
X_coordinates = row[0]
Y_coordinates = row[1]
cos_eff = row[2]
X.append(X_coordinates)
Y.append(Y_coordinates)
C.append(cos_eff)
Xcoordinate = [float(X[c]) for c in range(1,len(X))]
Ycoordinate=[float(Y[c]) for c in range(1,len(Y))]
CosineEff=[float(C[c]) for c in range(1,len(C))]
# Plotting the solar field
plt.figure(1)
plt.scatter(Xcoordinate,Ycoordinate, color = 'blue', s=2)
plt.title("Solar field")
plt.xlabel("Position, east-west [m]"); plt.ylabel("Position, east-west [m]")
plt.show()
现在,我想使用色图制作此散点图,该色图使用第三列中的值。
比如第一个点是:989.565,670.17,0.868684456。我已经绘制了 X 和 Y 坐标 - 在本例中为 989.565 和 670.17。但我想使用颜色图将 0.868684456 的值放在绘制的 X 和 Y 值上。
我想使用 Brewer2mpl 或 pcolour,但我不知道从哪里开始。
我可以使用 'colour mapped' 函数在 Origin 上制作彩色地图,但如何在 Python 上制作?
plt.scatter(x_vals, y_vals, c = z_vals, cmap = 'rainbow')
您将想要尝试添加 s= 并为点选择合适的大小。还有一个漂亮的colormap set called cmocean,您可能要考虑安装