无法使用 C# 在 Jupyter Notebook 中绘制内联图表

Cannot plot inline plotly charts in Jupyter Notebook using C#

您好,我正在尝试在 Jupyter Notebook 中绘制图表。我一直在关注这个tutorial

我正在使用以下 nuget 包读取数据,然后使用 plotly 绘制它

所以我有这段代码可以生成散点图,

var chart = Chart.Plot(
    new Graph.Scattergl()
    {
        x = houses.Select(v => v.Longitude),
        y = houses.Select(v => v.Latitude),
        mode = "markers",
        marker = new Graph.Marker()
        {
            color = houses.Select(v => v.MedianHouseValue),
            colorscale = "Jet"
        }
    }
);
chart.WithXTitle("Longitude");
chart.WithYTitle("Latitude");
chart.WithTitle("Median house value by location");
chart.Width = 600;
chart.Height = 600;
display(chart);

当我 运行 上面的单元格时,我得到以下输出,

根据教程,图表应该显示在输出单元格中,但我得到了上面的输出。

但是,我尝试 运行 命令 chart.Show(); 而不是最后的 dispaly(chart);,这会在新的 window 中呈现情节。我想在笔记本中内联生成图表。

我能够使用最新的 XPlot 版本和交互式 (XPlot.Plotly.Interactive) 包显示情节:

#r "nuget: XPlot.Plotly"
#r "nuget: XPlot.Plotly.Interactive"

并对代码进行轻微修改:

var chart = Chart.Plot(
    new Scattergl() // remove Graph.
    {
        x = houses.Select(v => v.Longitude),
        y = houses.Select(v => v.Latitude),
        mode = "markers",
        marker = new Marker() // remove Graph.
        {
            color = houses.Select(v => v.MedianHouseValue),
            colorscale = "Jet"
        }
    }
);
chart.WithXTitle("Longitude");
chart.WithYTitle("Latitude");
chart.WithTitle("Median house value by location");
chart.Width = 600;
chart.Height = 600;
chart // no display call