Я пытаюсь визуализировать интерактивный график, используя плагины. 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()
введите описание изображения здесь