Faceted Scatter Plot

Venture Capital Scaling by Sector

Funding-revenue relationship across venture sectors

Output
Venture Capital Scaling by Sector
Python
import matplotlib.pyplot as plt
import seaborn as sns
import pandas as pd
import numpy as np

np.random.seed(3333)

industries = ['SaaS', 'Fintech', 'Biotech', 'E-commerce']
data = []
for ind in industries:
    n = 44
    funding = np.random.uniform(1, 100, n)  # millions
    growth_rates = {'SaaS': 1.8, 'Fintech': 1.5, 'Biotech': 0.8, 'E-commerce': 1.3}
    revenue = growth_rates[ind] * np.sqrt(funding) + np.random.normal(0, 1.5, n)
    for f, r in zip(funding, revenue):
        data.append({'Funding ($M)': f, 'ARR ($M)': r, 'Industry': ind})

df = pd.DataFrame(data)

sns.set_style("whitegrid", {
    'axes.facecolor': '#ffffff',
    'figure.facecolor': '#ffffff',
    'grid.color': '#eeeeee'
})

palette = ['#5314E6', '#6CF527', '#F5276C', '#F5B027']

g = sns.lmplot(
    data=df,
    x='Funding ($M)',
    y='ARR ($M)',
    hue='Industry',
    col='Industry',
    col_wrap=2,
    height=3.5,
    aspect=1.2,
    palette=palette,
    scatter_kws={'alpha': 0.75, 's': 50, 'edgecolor': 'white', 'linewidths': 0.6},
    line_kws={'linewidth': 2.5},
    ci=95
)

g.fig.set_facecolor('#ffffff')
for ax in g.axes.flat:
    ax.set_facecolor('#ffffff')
    for spine in ax.spines.values():
        spine.set_color('#dddddd')

g.fig.suptitle('Venture Capital Efficiency', fontsize=14, fontweight='bold', color='#1a1a1a', y=1.02)
plt.tight_layout()
plt.show()
Library

Matplotlib

Category

Pairwise Data

Did this help you?

Support PyLucid to keep it free & growing

Support