最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#科學(xué)繪圖之使用scottPlot繪制多個(gè)圖像

 更新時(shí)間:2023年12月12日 08:57:19   作者:微小冷  
ScottPlot是基于.Net的一款開(kāi)源免費(fèi)的交互式可視化庫(kù),支持Winform和WPF等UI框架,本文主要為大家詳細(xì)介紹了如何使用scottPlot實(shí)現(xiàn)繪制多個(gè)圖像,需要的可以參考下

示例

從名字就能看出,ScottPlot的繪圖函數(shù)AddScatter的作用是為圖窗添加數(shù)據(jù)點(diǎn),換言之,每調(diào)用一次AddScatter,就可以在圖窗中添加一組圖像。下面添加兩個(gè)按鈕,分別用于繪制正弦和余弦圖像,其正弦按鈕的響應(yīng)函數(shù)如下

ScatterPlot sinPlot;
private void btnSin_Click(object sender, RoutedEventArgs e)
{
    var xs = Enumerable.Range(0, 1000).Select(x => x / 100.0).ToArray();
    var ys = xs.Select(x => Math.Sin(x)).ToArray();

    sinPlot = plt.Plot.AddScatter(xs, ys);
    plt.Refresh();
}

其中,sinPlot被設(shè)為全局變量,目的是方便后續(xù)用其他按鈕來(lái)操縱函數(shù)圖像。余弦圖像的相應(yīng)函數(shù)如出一轍,只需把變量名以及y s ysys的生成過(guò)程更改一下,效果如下

移除圖像

移除圖像,只需調(diào)用Remove函數(shù),以移除正弦函數(shù)為例,其相應(yīng)動(dòng)作如下

private void btnRmSin_Click(object sender, RoutedEventArgs e)
{
    plt.Plot.Remove(sinPlot);
    plt.Refresh();
}

下面演示一下移除圖像的效果,順便參悟一下彈出窗口的邏輯,所謂彈出窗口,就是把當(dāng)前圖窗中的圖形作為一個(gè)對(duì)象復(fù)制一份,然后這個(gè)對(duì)象將與舊圖窗變成陌生人,互不相干。

圖例

若想在圖窗中對(duì)兩個(gè)圖像做區(qū)分,就需要指明圖像的Label,仍以正弦函數(shù)為例,修改繪制按鈕的點(diǎn)擊函數(shù),當(dāng)然余弦函數(shù)也做相似處理。

private void btnSin_Click(object sender, RoutedEventArgs e)
{
    var xs = Enumerable.Range(0, 100).Select(x => x / 10.0).ToArray();
    var ys = xs.Select(x => Math.Sin(x)).ToArray();

    sinPlot = plt.Plot.AddScatter(xs, ys,label:"sin");
    plt.Plot.Legend();
    plt.Refresh();
}

由于前面1000 10001000個(gè)點(diǎn)的繪制效果不太好看,所以上面代碼把點(diǎn)數(shù)控制在100個(gè),繪制結(jié)果如下

信號(hào)圖

Scott支持把不同類型的圖像在一個(gè)圖窗中繪制,例如可以同時(shí)繪制散點(diǎn)圖和信號(hào)圖,示例如下

SignalPlot sigPlot;
private void btnSignal_Click(object sender, RoutedEventArgs e)
{
    double[] values = DataGen.RandomWalk(1_000_000, 0.003, 0.5);
    sigPlot = plt.Plot.AddSignal(values, sampleRate: 48_000);
    plt.Refresh();
}

這個(gè)圖像和前面的sinPlot,cosPlot連數(shù)據(jù)類型都是不一致的,不過(guò)很顯然二者有相同的父類。下面是其繪圖結(jié)果

到此這篇關(guān)于C#科學(xué)繪圖之使用scottPlot繪制多個(gè)圖像的文章就介紹到這了,更多相關(guān)C# scottPlot繪制多個(gè)圖像內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論

夏津县| 肥乡县| 郸城县| 孙吴县| 金昌市| 普格县| 德格县| 莒南县| 湛江市| 石城县| 呈贡县| 安化县| 和静县| 横山县| 阿克陶县| 中西区| 开原市| 通州市| 武强县| 彰化市| 沾益县| 茂名市| 凯里市| 吉安市| 迁安市| 抚宁县| 且末县| 富蕴县| 中卫市| 措美县| 靖宇县| 梁平县| 科技| 古浪县| 五家渠市| 叶城县| 乌兰察布市| 拉萨市| 龙山县| 读书| 张家港市|