昨日の件を友達に話したところ、crate側がRustのバージョンに対応してなかった可能性が高いようです。
これってちょっと見てみたけど、crate側の実装の問題な気がする。gnuplotのラッパーの方使ったら出力できた。
https://www.mathgram.xyz/entry/rust/gd
去年の中盤から更新されてなかったから
https://www.utam0k.jp/blog/2018/05/28/rust_std_default/
この一番下のエラーな気がするんだよな
というわけで、次のgnuplotライブラリを使って、サインカーブを出力してみます。
use gnuplot::{Figure, Caption, Color}; fn main() { let mut x = vec![]; let mut y = vec![]; for i in 0..1000 { let v = (i as f64) / 100.0; x.push(v); y.push(v.sin()); } plot(x, y); } fn plot(x: Vec<f64>, y: Vec<f64>) { let mut fg = Figure::new(); fg.set_terminal("pngcairo", "test.png"); fg.axes2d() .lines(&x, &y, &[Caption("A line"), Color("black")]); fg.show(); }
できました!これで「サインカーブをプロットする」のというトイケースはクリアですね。