zoukankan      html  css  js  c++  java
  • go语言生成一张正弦图

    先看效果:

    package main
    import (
        "image"
        "image/color"
        "image/png"
        "log"
        "math"
        "os"
    )
    
    func main() {
        // 图片大小
        const size = 300
        // 根据给定大小创建灰度图
        pic := image.NewGray(image.Rect(0, 0, size, size))
        // 遍历每个像素
        for x := 0; x < size; x++ {
            for y := 0; y < size; y++ {
                // 填充为白色
                pic.SetGray(x, y, color.Gray{255})
            }
        }
        // 从0到最大像素生成x坐标
        for x := 0; x < size; x++ {
            // 让sin的值的范围在0~2Pi之间
            s := float64(x) * 2 * math.Pi / size
            // sin的幅度为一半的像素。向下偏移一半像素并翻转
            y := size/2 - math.Sin(s)*size/2
            // 用黑色绘制sin轨迹
            pic.SetGray(x, int(y), color.Gray{0})
        }
        // 创建文件           
        file, err := os.Create("sin.png")
        if err != nil {
            log.Fatal(err)
        }
        // 使用png格式将数据写入文件
        png.Encode(file, pic) //将image信息写入文件中
        // 关闭文件
        file.Close()
    }
    

      

  • 相关阅读:
    Docker 私有仓库高级配置
    Docker 私有仓库
    Docker Hub
    访问 Docker 仓库
    Docker 删除容器
    392. 判断子序列
    605. 种花问题
    122. 买卖股票的最佳时机 II
    121. 买卖股票的最佳时机
    406. 根据身高重建队列
  • 原文地址:https://www.cnblogs.com/muamaker/p/10766564.html
Copyright © 2011-2022 走看看