问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

Java直方图

发布网友 发布时间:2022-05-18 03:01

我来回答

1个回答

热心网友 时间:2023-10-08 15:14

import java.util.Arrays;
import java.util.Scanner;

public class Histogram{
    private String title;
    private double start, stop;
    private double[] data;
    public Histogram(String title, double start, double stop, double[] data, int numBars){
        this.title = title;
        this.start = start;
        this.stop = stop;
        this.data = data;
    }
    public String toString(){
    int len = data.length;
        String[] arr = new String[len];
        double tmp = start;
        double each = (stop - start) / (len - 1);
        double max = Double.MIN_VALUE;
        for(int i = 0; i < len; i++)
{
        double di = data[i];
max = di > max ? di : max;
}
        for(int i = 0; i < len; i++)
{
        String x = "";
        int num = Integer.parseInt(String.format("%.0f", data[i] * 40 / max));
        for(int j = 0; j < num; j++)
{
x += "#";
}
arr[i] = tmp + " " + x + " " + data[i];
tmp += each;
}
        return String.format("%s%s20^", title, 
        Arrays.toString(arr).replaceAll("\\x20", "")
        .replaceAll("[\\[\\],]", "\r\n"));
    }
    public static void main(String[] args){
        Scanner scan = new Scanner(System.in);
        System.out.println("Enter a histogram.");
        System.out.println("Title: ");
        String title = scan.nextLine();
        System.out.println("Start value: ");
        double start = Double.parseDouble(scan.nextLine());
        System.out.println("End value: ");
        double stop = Double.parseDouble(scan.nextLine());
        System.out.println("Data: ");
        String d = scan.nextLine();
        scan.close();
        String[] ds = d.split("\\s+");
        double[] data = new double[ds.length];
        for(int i = 0; i < data.length; i++){
            data[i] = Double.parseDouble(ds[i]);
        }
        Histogram hist = new Histogram(title, start, stop, data, data.length);
        System.out.println(hist.toString());
    }
}

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
焦作有哪些旅行景点值得一去? 河南穿古装去的地方 AE入门从学会套模板开始,AE模板套用简易教程,看起来复杂的AE其实也很... ae怎么套用模板ae模版的使用方法 北京通州区有什么好玩的地方吗 请问现在有哪些看电影的网站?越多越好~~ 帮初中女儿请假一天讲身体不适,班主任却跟别的老师讲她得了大病,该如何... 梦见家中被盗空只剩一件绿色衣的预兆 梦见美丽沙穗 美版4s内置卡贴有什么危害? 支付宝上的蚂蚁借呗借钱有限额么 蚂蚁借呗额度我能借多少 Adobe Dreamweaver CS3 要这样才能掌握它的代码呀?请求高人指教?谢谢 adobe dreamweaver CS4 怎么在图片上写文字 Adobe Dreamweaver代码常用的单词 淘宝黄钻或v5等级那个高 Adobe Dreamweaver使用方法 adobe dreamweaver怎么排列图片 基础(10)如何在Adobe Dreamweaver CS3中快速插入iframe框架 Adobe Dreamweaver CS4 如何使用,要简单的,适合第一次使用的人。 苹果11来电话时屏幕周围灯闪烁怎么设置的? 小明家里有一箱过期的牛奶如果直接扔掉就太可惜了曾经魏小明想想办法如何更好地利用这过香过期的牛奶? 请问12读作多少应该怎样写? oppo在哪里能找到客服 oppo客服是多少 &quot;网址&quot;的含义? 名词解释! 帮帮我!!!一个名词解释——水质监测 名词解释:关于斯泰迪康摄影 Crunk风格的音乐,谁具体给我介绍一下 环保名词解释(详细) 用java语言怎样编写一个直方图!直方图中按输入的数值,和数值间的比例来显示支付那个图的长短 java 怎么从数据库中读出数据并用直方图显示 用java怎样画直方图 求颜色直方图的java代码,C语言写的也可以,多谢多谢 可以发到我的邮箱:sadwxqezc@163.com opporeon3元气版后盖和后摄像头镜片是相连的吗? 直方图怎么让总占比包含其他分项 OPPO Reno3 Pro 5G换后盖多少钱! oppo a11x手机支持快充吗亲,刚买的这款手机,卖手机的说支持快充? 微信公众号里的情感句子怎么转到qq空间 怎样将苹果手机微信公众号里的东西分享到qq空间?我在右上角菜单里找不到qq空间这一选项,我也装空间 请问这个系列的表情包的作者是谁? 这个表情包的是谁? 谁知道这个表情包里面的人是谁 请问有谁知道这个表情包的出处嘛 市场上的老花镜又笨又重的,不喜欢啊。问一下大神们,现在有超轻超薄的老花镜么? 红利圈做的供应链金融和P2P有什么区别吗? P2P供应链金融的模式有哪些 ipad air2能配蓝牙键盘吗? 道口贷是否合法 你认为理论上,一个拿着刀的成年人能打过狮子吗?