Radar Chart

Competitor Brand Positioning Analysis

Radar chart comparing competing brands across key market positioning factors including brand awareness, product quality, pricing perception, and customer service.

Output
Competitor Brand Positioning Analysis
Python
import matplotlib.pyplot as plt
import numpy as np

# Brand positioning dimensions
categories = ['Brand Awareness', 'Product Quality', 'Price Perception',
              'Customer Service', 'Innovation', 'Sustainability',
              'Distribution', 'Social Media Presence']
              
brand_a = [95, 88, 70, 85, 90, 75, 92, 88]  # Market leader
brand_b = [78, 92, 85, 90, 75, 88, 80, 72]  # Quality focused
brand_c = [70, 75, 95, 70, 65, 60, 88, 65]  # Value brand
brand_d = [65, 80, 78, 82, 95, 92, 60, 95]  # Innovator

N = len(categories)
angles = np.linspace(0, 2 * np.pi, N, endpoint=False).tolist()
angles += angles[:1]

brand_a += brand_a[:1]
brand_b += brand_b[:1]
brand_c += brand_c[:1]
brand_d += brand_d[:1]

fig, ax = plt.subplots(figsize=(10, 10), subplot_kw=dict(polar=True), facecolor='#ffffff')
ax.set_facecolor('#ffffff')

ax.plot(angles, brand_a, 'o-', linewidth=2.5, color='#F5276C', label='Brand A (Leader)', markersize=7)
ax.fill(angles, brand_a, alpha=0.1, color='#F5276C')

ax.plot(angles, brand_b, 's-', linewidth=2.5, color='#27D3F5', label='Brand B (Quality)', markersize=7)
ax.fill(angles, brand_b, alpha=0.1, color='#27D3F5')

ax.plot(angles, brand_c, '^-', linewidth=2.5, color='#F5B027', label='Brand C (Value)', markersize=7)
ax.fill(angles, brand_c, alpha=0.1, color='#F5B027')

ax.plot(angles, brand_d, 'D-', linewidth=2.5, color='#6CF527', label='Brand D (Innovator)', markersize=7)
ax.fill(angles, brand_d, alpha=0.1, color='#6CF527')

ax.set_xticks(angles[:-1])
ax.set_xticklabels(categories, fontsize=10, color='#374151', fontweight='500')
ax.set_ylim(0, 100)

ax.yaxis.grid(True, color='#e5e7eb', linestyle='-', linewidth=0.8)
ax.xaxis.grid(True, color='#d1d5db', linestyle='-', linewidth=0.5)
ax.spines['polar'].set_color('#d1d5db')

ax.set_title('Competitor Brand Positioning Map', fontsize=16, color='#1f2937',
             fontweight='bold', pad=25)

ax.legend(loc='upper right', bbox_to_anchor=(1.22, 1.1), fontsize=10,
          frameon=True, facecolor='white', edgecolor='#e5e7eb')

plt.tight_layout()
plt.show()
Library

Matplotlib

Category

Polar Charts

Did this help you?

Support PyLucid to keep it free & growing

Support