matplotlib cmap viridis
参考:cmap viridis
在数据可视化中,色彩映射(cmap)在绘制图表时起着非常重要的作用。Viridis是一种颜色映射,它在matplotlib中得到了广泛应用。Viridis颜色映射具有很好的辨识度和色盲友好性,可以帮助我们更好地理解数据。
下面我们将详细介绍如何在matplotlib中使用cmap viridis。
导入matplotlib
首先我们需要导入matplotlib库,如果没有安装可以使用以下命令进行安装:
pip install matplotlib
然后在Python代码中导入matplotlib库:
import matplotlib.pyplot as plt
import numpy as np
绘制散点图
首先我们来看一下如何在散点图中使用cmap viridis。我们先生成一些随机数据:
import matplotlib.pyplot as plt
import numpy as np
x = np.random.rand(100)
y = np.random.rand(100)
colors = np.arange(100)
然后使用scatter函数绘制散点图,并指定使用viridis颜色映射:
import matplotlib.pyplot as plt
import numpy as np
x = np.random.rand(100)
y = np.random.rand(100)
colors = np.arange(100)
plt.scatter(x, y, c=colors, cmap='viridis')
plt.colorbar()
plt.show()
Output:
这样就可以看到使用viridis颜色映射的散点图了。
绘制直方图
接下来,我们将演示如何在直方图中使用cmap viridis。同样先生成一些随机数据:
data = np.random.normal(0, 1, 1000)
然后使用hist函数绘制直方图,并指定使用viridis颜色映射:
import matplotlib.pyplot as plt
import numpy as np
data = np.random.normal(0, 1, 1000)
plt.hist(data, bins=30, cmap='viridis')
plt.show()
这样就可以得到一个使用viridis颜色映射的直方图。
绘制等高线图
另外一个常用的图表类型是等高线图,我们也可以在等高线图中使用cmap viridis。首先生成一些数据:
x = np.linspace(-3, 3, 100)
y = np.linspace(-3, 3, 100)
X, Y = np.meshgrid(x, y)
Z = np.sin(X) + np.cos(Y)
然后使用contourf函数绘制等高线图,并指定使用viridis颜色映射:
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(-3, 3, 100)
y = np.linspace(-3, 3, 100)
X, Y = np.meshgrid(x, y)
Z = np.sin(X) + np.cos(Y)
plt.contourf(X, Y, Z, cmap='viridis')
plt.colorbar()
plt.show()
Output:
这样就可以得到一个使用viridis颜色映射的等高线图。
使用set_cmap
除了在绘制图表时直接指定cmap参数外,我们还可以使用set_cmap方法来设置颜色映射。例如在绘制散点图时可以这样做:
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(-3, 3, 100)
y = np.linspace(-3, 3, 100)
X, Y = np.meshgrid(x, y)
Z = np.sin(X) + np.cos(Y)
plt.scatter(x, y, c=colors)
plt.colorbar()
plt.set_cmap('viridis')
plt.show()