slogan3

Maak een Matplotlib-visualisatie om historische trends in meerdere datasets te vergelijken

description

Door deze prompt te gebruiken, kunnen gebruikers gemakkelijk trends in meerdere datasets visualiseren en vergelijken, wat betere analyse en besluitvorming op basis van historische gegevens mogelijk maakt. Het biedt een duidelijke en aanpasbare aanpak voor het visueel presenteren van complexe informatie.

prompt

try_prompt

Help me een Matplotlib-visualisatie te maken die historische trends vergelijkt over meerdere datasets. Ik wil de gegevens visualiseren van de volgende bronnen: {{dataset_sources}}. Stel geschikte ... more
generate_helper
disclaimerOnPageApi image_legal_disclaimer...

ai_answers

provider: openai
model: gpt-4.1-nano
Natuurlijk! Hier is een voorbeeld van hoe je een overzichtelijke en impactvolle visualisatie kunt maken met Matplotlib om de verkoopgegevens van 2020 tot 2023 te vergelijken. We gebruiken lijngrafieken voor de trends, en bieden opties voor aanpassing in lay-out en kleurenschema's. ```python import matplotlib.pyplot as plt import pandas as pd import numpy as np # Voorbeeldgegevens genereren (vervang dit door je eigen gegevens) jaren = ['2020', '2021', '2022', '2023'] maanden = pd.date_range(start='2020-01-01', end='2023-12-01', freq='MS') # Simuleer verkoopgegevens voor 4 jaren np.random.seed(0) data = { '2020': np.random.normal(loc=200, scale=50, size=len(maanden)), '2021': np.random.normal(loc=250, scale=60, size=len(maanden)), '2022': np.random.normal(loc=300, scale=70, size=len(maanden)), '2023': np.random.normal(loc=350, scale=80, size=len(maanden)), } df = pd.DataFrame(data, index=maanden) # Plot instellen plt.figure(figsize=(14, 8)) # Kleuren schema (pas aan naar je voorkeur) kleuren = { '2020': '#1f77b4', # Blauw '2021': '#ff7f0e', # Oranje '2022': '#2ca02c', # Groen '2023': '#d62728', # Rood } # Plot elke dataset als lijn for jaar in jaren: plt.plot(df.index, df[jaar], label=jaar, color=kleuren[jaar], linewidth=2) # Lay-out aanpassen plt.title('Verkooptrends 2020-2023', fontsize=16) plt.xlabel('Datum', fontsize=14) plt.ylabel('Verkoop (eenheden)', fontsize=14) plt.legend(title='Jaar', fontsize=12) plt.grid(True, linestyle='--', alpha=0.6) # Optie: data punten markeren voor meer duidelijkheid # voor meer impact, kun je ook markers toevoegen: # for jaar in jaren: # plt.plot(df.index, df[jaar], 'o', color=kleuren[jaar], markersize=4) # Layout optimaliseren plt.tight_layout() # Tekstopties voor aanpassing # Bijvoorbeeld: achtergrondkleur wijzigen # plt.gca().set_facecolor('#f0f0f0') # Of de fontstijl aanpassen # plt.rcParams['font.family'] = 'Arial' plt.show() ``` **Aanpassingsopties:** - **Grafiektype:** Wissel lijngrafieken af met bijvoorbeeld staafdiagrammen (`plt.bar`) als je discrete gegevens hebt. - **Kleuren:** Pas de kleuren aan in de `kleuren` dictionary voor meer impact of passend bij je huisstijl. - **Lay-out:** Verander de figure size (`figsize`), lettergroottes, en voeg eventueel annotaties toe voor belangrijke data. - **Duidelijkheid:** Voeg markers toe of gebruik verschillende lijntypes voor extra onderscheid. Deze code is direct uitvoerbaar en kan eenvoudig worden aangepast aan je eigen data en wensen!
provider: deepseek
model: deepseek-chat
Hier is een complete Matplotlib-implementatie voor het visualiseren van historische verkooptrends met verschillende aanpassingsopties: ```python import matplotlib.pyplot as plt import numpy as np import pandas as pd from datetime import datetime # Voorbeeld verkoopgegevens (2020-2023) data = { 'Jaar': [2020, 2021, 2022, 2023], 'Product_A': [120, 180, 220, 280], 'Product_B': [80, 150, 190, 240], 'Product_C': [60, 110, 170, 210], 'Product_D': [90, 130, 160, 200] } df = pd.DataFrame(data) # STANDAARD VISUALISATIE fig, (ax1, ax2) = plt.subplots(1, 2, figsize=(15, 6)) # 1. LIJNGRAFIEK - Voor trendanalyse for product in ['Product_A', 'Product_B', 'Product_C', 'Product_D']: ax1.plot(df['Jaar'], df[product], marker='o', linewidth=2.5, label=product) ax1.set_title('Verkooptrends 2020-2023', fontsize=14, fontweight='bold', pad=20) ax1.set_xlabel('Jaar', fontsize=12) ax1.set_ylabel('Verkoopvolume', fontsize=12) ax1.legend(loc='upper left') ax1.grid(True, alpha=0.3) ax1.set_xticks(df['Jaar']) # 2. STAAFDIAGRAM - Voor jaar-op-jaar vergelijking bar_width = 0.2 x_pos = np.arange(len(df['Jaar'])) for i, product in enumerate(['Product_A', 'Product_B', 'Product_C', 'Product_D']): ax2.bar(x_pos + i * bar_width, df[product], bar_width, label=product) ax2.set_title('Jaarlijkse Verkoopvergelijking', fontsize=14, fontweight='bold', pad=20) ax2.set_xlabel('Jaar', fontsize=12) ax2.set_ylabel('Verkoopvolume', fontsize=12) ax2.set_xticks(x_pos + bar_width * 1.5) ax2.set_xticklabels(df['Jaar']) ax2.legend() plt.tight_layout() plt.show() # OPTIONELE AANPASSINGEN - KIES EEN VAN DEZE STIJLEN: # OPTIE 1: DONKER THEMA def donker_theme(): plt.style.use('dark_background') fig, ax = plt.subplots(figsize=(12, 6)) colors = ['#FF6B6B', '#4ECDC4', '#45B7D1', '#96CEB4'] for i, product in enumerate(['Product_A', 'Product_B', 'Product_C', 'Product_D']): ax.plot(df['Jaar'], df[product], marker='s', linewidth=3, color=colors[i], label=product, markersize=8) ax.set_title('Verkooptrends 2020-2023 - Donker Thema', fontsize=16, fontweight='bold', pad=20, color='white') ax.set_xlabel('Jaar', fontsize=12, color='white') ax.set_ylabel('Verkoopvolume', fontsize=12, color='white') ax.legend(loc='upper left', framealpha=0.2) ax.grid(True, alpha=0.2) plt.tight_layout() plt.show() # OPTIE 2: PROFESSIONEEL THEMA def professioneel_theme(): plt.style.use('seaborn-v0_8-whitegrid') fig, ax = plt.subplots(figsize=(12, 6)) colors = ['#2E86AB', '#A23B72', '#F18F01', '#C73E1D'] bar_width = 0.15 x_pos = np.arange(len(df['Jaar'])) for i, product in enumerate(['Product_A', 'Product_B', 'Product_C', 'Product_D']): ax.bar(x_pos + i * bar_width, df[product], bar_width, color=colors[i], label=product, alpha=0.8, edgecolor='black', linewidth=0.5) ax.set_title('Jaarlijkse Verkoopanalyse 2020-2023', fontsize=16, fontweight='bold', pad=20) ax.set_xlabel('Jaar', fontsize=12) ax.set_ylabel('Verkoopvolume', fontsize=12) ax.set_xticks(x_pos + bar_width * 1.5) ax.set_xticklabels(df['Jaar']) ax.legend() plt.tight_layout() plt.show() # OPTIE 3: GESTAPELDE STAFFDIAGRAM def gestapelde_bars(): fig, ax = plt.subplots(figsize=(12, 6)) categories = ['Product_A', 'Product_B', 'Product_C', 'Product_D'] bottom_values = np.zeros(len(df['Jaar'])) colors = ['#FF9999', '#66B2FF', '#99FF99', '#FFD700'] for i, product in enumerate(categories): ax.bar(df['Jaar'], df[product], bottom=bottom_values, label=product, color=colors[i], alpha=0.8) bottom_values += df[product].values ax.set_title('Cumulatieve Verkoopontwikkeling 2020-2023', fontsize=16, fontweight='bold', pad=20) ax.set_xlabel('Jaar', fontsize=12) ax.set_ylabel('Totaal Verkoopvolume', fontsize=12) ax.legend(loc='upper left') ax.grid(True, alpha=0.3) plt.tight_layout() plt.show() # Gebruik één van de thema's (haal de commentaar weg): # donker_theme() # professioneel_theme() # gestapelde_bars() ``` **Aanbevolen grafiektypes voor uw data:** 1. **Lijngrafiek**: Perfect voor trendanalyse over tijd 2. **Staafdiagram**: Ideaal voor jaar-op-jaar vergelijking 3. **Gestapelde staafdiagram**: Toont cumulatieve ontwikkeling **Layout aanpassingsopties:** - **Kleurenschema's**: Donker thema voor presentaties, professionele kleuren voor rapporten - **Grootte**: `figsize=(12, 6)` voor optimale leesbaarheid - **Grid**: Gebruik `grid(True, alpha=0.3)` voor subtiele hulplijnen - **Legenda**: Positioneer strategisch (`loc='upper left'`) **Uitvoeren:** 1. Kopieer de code naar een Python-bestand 2. Installeer eventueel ontbrekende packages: `pip install matplotlib pandas numpy` 3. Voer uit en kies gewenste thema's door commentaar te verwijderen De code bevat zowel een basisversie als geavanceerde thema's voor verschillende gebruiksscenario's.