> ## Documentation Index
> Fetch the complete documentation index at: https://docs.wandb.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Comment puis-je ajouter des graphiques Plotly ou Bokeh dans Tables ?

L’intégration directe de figures Plotly ou Bokeh dans des tableaux n’est pas prise en charge. Exportez plutôt les figures au format HTML et incluez ce HTML dans le tableau. Les exemples suivants montrent comment procéder avec des graphiques Plotly et Bokeh interactifs.

<Tabs>
  <Tab title="Plotly">
    ```python theme={null}
    import wandb
    import plotly.express as px

    # Initialiser une nouvelle exécution
    with wandb.init(project="log-plotly-fig-tables", name="plotly_html") as run:

        # Créer un tableau
        table = wandb.Table(columns=["plotly_figure"])

        # Définir le chemin de la figure Plotly
        path_to_plotly_html = "./plotly_figure.html"

        # Créer une figure Plotly
        fig = px.scatter(x=[0, 1, 2, 3, 4], y=[0, 1, 4, 9, 16])

        # Exporter la figure Plotly au format HTML
        # Définir auto_play sur False empêche les graphiques Plotly animés de se lancer automatiquement
        fig.write_html(path_to_plotly_html, auto_play=False)

        # Ajouter la figure Plotly en tant que fichier HTML au tableau
        table.add_data(wandb.Html(path_to_plotly_html))

        # Journaliser le tableau
        run.log({"test_table": table})

    ```
  </Tab>

  <Tab title="Bokeh">
    ```python theme={null}
    from scipy.signal import spectrogram
    import holoviews as hv
    import panel as pn
    from scipy.io import wavfile
    import numpy as np
    from bokeh.resources import INLINE

    hv.extension("bokeh", logo=False)
    import wandb

    def save_audio_with_bokeh_plot_to_html(audio_path, html_file_name):
        sr, wav_data = wavfile.read(audio_path)
        duration = len(wav_data) / sr
        f, t, sxx = spectrogram(wav_data, sr)
        spec_gram = hv.Image((t, f, np.log10(sxx)), ["Time (s)", "Frequency (Hz)"]).opts(
            width=500, height=150, labelled=[]
        )
        audio = pn.pane.Audio(wav_data, sample_rate=sr, name="Audio", throttle=500)
        slider = pn.widgets.FloatSlider(end=duration, visible=False)
        line = hv.VLine(0).opts(color="white")
        slider.jslink(audio, value="time", bidirectional=True)
        slider.jslink(line, value="glyph.location")
        combined = pn.Row(audio, spec_gram * line, slider).save(html_file_name)

    html_file_name = "audio_with_plot.html"
    audio_path = "hello.wav"
    save_audio_with_bokeh_plot_to_html(audio_path, html_file_name)

    wandb_html = wandb.Html(html_file_name)
    with wandb.init(project="audio_test") as run:
        my_table = wandb.Table(columns=["audio_with_plot"], data=[[wandb_html], [wandb_html]])
        run.log({"audio_table": my_table})
    ```
  </Tab>
</Tabs>

***

<Badge stroke shape="pill" color="orange" size="md">[Experiments](/fr/support/models/tags/experiments)</Badge><Badge stroke shape="pill" color="orange" size="md">[Tables](/fr/support/models/tags/tables)</Badge><Badge stroke shape="pill" color="orange" size="md">[Graphiques](/fr/support/models/tags/charts)</Badge>
