«plugins.InteractiveLegendPlugin ()» не отображает легенды полностью - PullRequest
0 голосов
/ 21 января 2020

Я пытаюсь визуализировать интерактивный график, используя плагины. InteractiveLegendPlugin (). Однако не все условные обозначения (числа от 1 до 50) показаны полностью (показаны только от 1 до 19). Затем я попытался откорректировать фигуру, используя fig.subplots_adjust(right=0.7, top=1), теперь она показывает больше легенд (от 1 до 21). но все еще не полностью, и к тому же больше невозможно изменить настройку.

import mpld3
from mpld3 import plugins
from mpld3.utils import get_id
import collections

partial = df_mobile.iloc[::100, :]

img = plt.imread("StHimarkNeighborhoodMapNoLabels.png")

fig,ax = plt.subplots()
fig.set_size_inches(14,8,forward=True)
fig.suptitle("Location of Pollution", fontsize=20)
fig.subplots_adjust(right=0.7, top=1)

ax.imshow(img, extent=[-120, -119.711, 0, 0.2385])

plt.ylabel("Latitude",fontsize=15)
plt.xlabel("Longtitude",fontsize=15)

for val in range(1,51):
    partial_filtered = partial[partial['Sensor-id']==val].filter(items=['Long','Lat'])
    vis = ax.plot(partial_filtered['Long'], partial_filtered['Lat'].T, lw=2, alpha=0.8, label=val)
    handles, labels = ax.get_legend_handles_labels()


plt.grid()


interactive_legend = plugins.InteractiveLegendPlugin(zip(handles,
                                                          labels),
                                                      labels,
                                                      alpha_unsel=0.5,
                                                      alpha_over=1.5, 
                                                      start_visible=True)
plugins.connect(fig, interactive_legend)


plt.gca().set_ylim(0, 0.2385)
plt.gca().set_xlim(-120, -119.711)

mpld3.display()

введите описание изображения здесь

...