【发布时间】:2020-09-09 13:01:00
【问题描述】:
我有以下数据框(见下文),我试图绘制 y 与 y_pred,然后根据它们的大小着色,并根据它们的间隔大小更改标记的大小。如果有大间隔尺寸的标记,则颜色会更鲜艳,尺寸更大。
y interval_size y_pred
0.039268 2.414647 0.487695
0.049268 0.984652 0.326719
0.044148 1.268927 0.520769
0.050269 0.985148 0.415107
0.059282 0.965122 0.467267
我使用以下代码来生成此图:
图码
plt.style.use("seaborn")
sns.set_style("darkgrid")
fig, ax = plt.subplots(figsize=(18,9))
plt.scatter(x = true_labels, y = predictions, c=interval_size, alpha=0.6,
cmap='viridis', sizes=(20, 150), s = interval_size)
cbar= plt.colorbar()
cbar.set_label("Interval Width", labelpad=+1, fontsize = 20)
plt.title("True vs Predicted Labels", fontsize = 36)
plt.xlabel("True Labels", fontsize = 25)
plt.ylabel("Predicted Labels", fontsize = 25)
我可以根据颜色生成大小不同的图,但我并没有真正将标记的大小设为不同。
此外,是否可以更改每列的标记类型,在这种情况下,属于列 y 或 y_pred 的标记类型可以不同?我尝试实现这里所做的但没有成功:stackoverflow_link
我收到此警告:
/home/felicia/my_python_env/lib/python3.7/site-packages/matplotlib/collections.py:922: RuntimeWarning: invalid value encountered in sqrt
scale = np.sqrt(self._sizes) * dpi / 72.0 * self._factor
【问题讨论】:
标签: python matplotlib plot