Python中带渐变背景的DotPlot?

2024-06-26 02:24:04 发布

您现在位置:Python中文网/ 问答频道 /正文

我想请求帮助,以便在python中以渐变调色板作为背景绘制点图。我设法用R绘制了这个图(我有一些专业知识),但是出于学习的目的,我想用Python。在

这是我在R中绘制的图,我想在Python中重现:

http://imgur.com/wUblcsc

这是用于在R中生成绘图的表

Player,Rank
Messi,3
Neymar,3
Ronaldo,2
Iniesta,2
Rooney,2
Pogba,2
Dybala,1
Bale,0

这是我在Python中使用Matplotlib、seaborn和pandas的尝试:

^{pr2}$

这段代码给了我以下的结果:

http://imgur.com/EYNCCjw

这里的问题是:

如何在绘图中绘制类似“RdYlGn\r”的渐变调色板?


Tags: 目的comhttp绘图绘制player背景imgur
1条回答
网友
1楼 · 发布于 2024-06-26 02:24:04

你可以画一个简单的背景图像。在

要开始:

import matplotlib.pyplot as plt
import seaborn as sns
import numpy as np

names = ['A', 'B', 'C', 'D', 'E', 'F']
values = [0, 1, 2, 3, 1, 2]
n = len(names)
gradient = np.linspace(0, 1, 100).reshape(1, -1)
plt.imshow(gradient , extent=[-0.25, 3.25, -1, n], aspect='auto', cmap='RdYlGn_r')
sns.stripplot(x=values, y=names, color='b', size=12, edgecolor='b')
plt.hlines(np.arange(0, n), -0.25, 3.25, linestyles=' ', linewidth=1)
plt.grid(False)
plt.xlim(-0.25, 3.25)
plt.xticks([0, 1, 2, 3])

{a1}

相关问题 更多 >