How to change 2d Scatterplot to display color based on third array in csv file?

I am using Python and a CSV file. I am currently trying to change the scatter plot (2d) below to change colors based on the third column in my csv file. After searching through several posts, I basically want to use a common color palette (rainbow) and multiply my third array by colormap to display different colors for each of the xy points. I think I can do everything from the ax.scatter function, but I'm not sure how to multiply each other x, y coordinate by the color map and the number of the third array. It should look like a contour plot, but I would prefer a different color scatter plot.

Here is the code I'm using:

 import matplotlib from matplotlib.backends.backend_agg import FigureCanvasAgg as FigureCanvas from matplotlib.figure import Figure import matplotlib.mlab as mlab import numpy as np r = mlab.csv2rec('test.csv') fig = Figure(figsize=(6,6)) canvas = FigureCanvas(fig) ax = fig.add_subplot(111) ax.set_title("X vs Y AVG",fontsize=14) ax.set_xlabel("XAVG",fontsize=12) ax.set_ylabel("YAVG",fontsize=12) ax.grid(True,linestyle='-',color='0.75') x = r.xavg #first column y = r.yavg #second column z = r.wtr #third column ax.scatter(x,y,s=.2,c='b', marker = ',', cmap = ?); 
+6
source share
1 answer

check scattering line

 import matplotlib.pyplot as plt from matplotlib import cm import numpy as np fig = plt.figure(figsize=(6,6)) ax = fig.add_subplot(111) ax.set_title("X vs Y AVG",fontsize=14) ax.set_xlabel("XAVG",fontsize=12) ax.set_ylabel("YAVG",fontsize=12) ax.grid(True,linestyle='-',color='0.75') x = np.random.random(30) y = np.random.random(30) z = np.random.random(30) # scatter with colormap mapping to z value ax.scatter(x,y,s=20,c=z, marker = 'o', cmap = cm.jet ); plt.show() 

and he produces

enter image description here

+11
source

Source: https://habr.com/ru/post/916704/


All Articles