Как настроить цветовую шкалу трехмерного рассеивателя в соответствии с размером оси Z? - PullRequest
0 голосов
/ 25 февраля 2019

Я пытаюсь визуализировать свои данные из столбца панд в виде трехмерного графика рассеяния.У меня проблема с настройкой соответствия цветовой шкалы точному размеру моей оси Z.

Мой код:

import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D

s = pd.read_csv('FahrerVP8.out_1.csv', index_col=0)

ax = plt.figure()
three_d = ax.gca(projection='3d')
three_d1 = three_d.scatter(s['Latitude'], s['Longitude'],s['Mean_ VehicleSpeed'], c =s['Mean_ VehicleSpeed'] )
three_d.set_xlabel('Latitude')
three_d.set_ylabel('Longitude')
three_d.set_zlabel('Mean Vehicle Speed')


plt.colorbar(three_d1)
plt.show()

Мой результат

enter image description here

Я хочу, чтобы высота моей цветовой шкалы регулировалась высотой оси z.

1 Ответ

0 голосов
/ 26 февраля 2019

Один из способов изменить размер вашей цветовой шкалы - использовать свойство «сжимать» оси следующим образом:

plt.colorbar(three_d1, shrink="0.5") # an example

Но вам нужно найти правильное значение руками. Это может быть 0,5, например 0,7,

Однако вы можете попытаться вычислить необходимое значение сжатия, получив размер оси Z.

...