基于不同于x和y的列表的散点颜色贴图(Python)

基于不同于x和y的列表的散点颜色贴图(Python),python,matplotlib,Python,Matplotlib,假设您有以下情况: import matplotlib.pyplot as plt x = [0.8, 0.4, 0.6, 1, 1.5, 1.8, 2.0, 0.5, 1.3, 0.1] y = [0.5, 0.12, 0.45, 0.98, 1.31, 1.87, 1.0, 0.11, 1.45, 0.67] r = [x[i]/y[i] for i in range(len(x))] fig, ax = plt.subplots(1,1, tight_layout=True, figsi

假设您有以下情况:

import matplotlib.pyplot as plt

x = [0.8, 0.4, 0.6, 1, 1.5, 1.8, 2.0, 0.5, 1.3, 0.1]
y = [0.5, 0.12, 0.45, 0.98, 1.31, 1.87, 1.0, 0.11, 1.45, 0.67]
r = [x[i]/y[i] for i in range(len(x))]
fig, ax = plt.subplots(1,1, tight_layout=True, figsize=(10,10))
ax.subplot(x,y,cmap=?) 
现在我想画一张彩色地图。但是,点的颜色由r的值给出。我该怎么做

提前谢谢您。

以下是您的操作方法

导入matplotlib.pyplot作为plt
x=[0.8,0.4,0.6,1,1.5,1.8,2.0,0.5,1.3,0.1]
y=[0.5,0.12,0.45,0.98,1.31,1.87,1.0,0.11,1.45,0.67]
r=[x[i]/y[i]表示范围内的i(len(x))]
图,ax=plt.子批次(1,1,紧密布局=真,figsize=(10,10))
最大散射(x,y,c=r)
您还可以更改默认的颜色贴图

ax.scatter(x, y, c=r, cmap='viridis')
完整的颜色映射图如下所示

导入matplotlib.pyplot作为plt
x=[0.8,0.4,0.6,1,1.5,1.8,2.0,0.5,1.3,0.1]
y=[0.5,0.12,0.45,0.98,1.31,1.87,1.0,0.11,1.45,0.67]
r=[x[i]/y[i]表示范围内的i(len(x))]
图,ax=plt.子批次(1,1,紧密布局=真,figsize=(10,10))
最大散射(x,y,c=r)
您还可以更改默认的颜色贴图

ax.scatter(x, y, c=r, cmap='viridis')
完整的颜色映射可以使用MatPlotLib,它将2个数组(x值、y值)作为必需的参数。您还可以提供第三个数组c,其长度为x和y,用于设置每个点的颜色值

就你而言:

ax.scatter(x=x,y=y,c=r)
这么简单

可以使用MatPlotLib,它将2个数组(x值、y值)作为必需的参数。您还可以提供第三个数组c,其长度为x和y,用于设置每个点的颜色值

就你而言:

ax.scatter(x=x,y=y,c=r)
这么简单