Sorry for inconvenience as it seems that the panel.location description for chart legends is not correct.
The panel settings are inherited from BaseSettingsChartPanel settings.
Although it mentions that :
external - The panel is located outside of the chart area. This option is only available for panels that use HTML elements instead of being drawn on the canvas.
It doesn't say that Legend and it's items are drawn on the canvas, meaning that "external" option cannot be set to legend.panel.
You will have to create your own custom HTML legend and use chart API methods to get data for legend and to bind click events.