java折線圖,java折線圖數據

本文目錄一覽:

java怎麼生成折線圖,傳入月份(1,2,3)生產數量(100,200,300),然後生成一個折線圖,最好是曲線圖,謝

按照你的要求編寫的折線圖程序如下:生成的圖片放在D盤根目錄下,文件名是testline.png

import java.io.File;

import java.io.FileNotFoundException;

import java.io.FileOutputStream;

import java.io.IOException;

import javax.swing.JPanel;

import org.jfree.chart.ChartFactory;

import org.jfree.chart.ChartPanel;

import org.jfree.chart.ChartUtilities;

import org.jfree.chart.JFreeChart;

import org.jfree.chart.axis.NumberAxis;

import org.jfree.chart.plot.CategoryPlot;

import org.jfree.chart.plot.PlotOrientation;

import org.jfree.data.category.DefaultCategoryDataset;

import org.jfree.ui.ApplicationFrame;

import org.jfree.ui.RefineryUtilities;

public class LineCharts extends ApplicationFrame {

public LineCharts(String s) {

super(s);

setContentPane(createDemoLine());

}

public static void main(String[] args) {

LineCharts fjc = new LineCharts(“折線圖”);

fjc.pack();

RefineryUtilities.centerFrameOnScreen(fjc);

fjc.setVisible(true);

}

// 生成顯示圖表的面板 public static JPanel createDemoLine() {

JFreeChart jfreechart = createChart(createDataset());

saveAsFile(jfreechart, “D://testline.png”, 500, 300);

return new ChartPanel(jfreechart);

}

// 生成圖表主對象JFreeChart public static JFreeChart createChart(DefaultCategoryDataset linedataset) {

//定義圖表對象

JFreeChart chart = ChartFactory.createLineChart(“LineChart”, // chart title

“Time”, // domain axis label

“Quantity”, // range axis label

linedataset, // data

PlotOrientation.VERTICAL, // orientation

true, // include legend

true, // tooltips

false // urls

);

CategoryPlot plot = chart.getCategoryPlot();

// customise the range axis…

NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis();

rangeAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits());

rangeAxis.setAutoRangeIncludesZero(true);

rangeAxis.setUpperMargin(1);

rangeAxis.setLabelAngle(Math.PI / 2.0);

return chart; }

//生成數據 public static DefaultCategoryDataset createDataset() {

DefaultCategoryDataset linedataset = new DefaultCategoryDataset();

// 各曲線名稱

String series1 = “car”;

// 橫軸名稱(列名稱)

String type1 = “Jan”;

String type2 = “Feb”;

String type3 = “Mar”;

linedataset.addValue(100, series1, type1); linedataset.addValue(200, series1, type2);

linedataset.addValue(300, series1, type3);

return linedataset; }

public static void saveAsFile(JFreeChart chart, String outputPath,

int weight, int height) {

FileOutputStream out = null;

try {

File outFile = new File(outputPath);

if (!outFile.getParentFile().exists()) {

outFile.getParentFile().mkdirs();

}

out = new FileOutputStream(outputPath);

// 保存為PNG文件

ChartUtilities.writeChartAsPNG(out, chart, 600, 350);

out.flush();

} catch (FileNotFoundException e) {

e.printStackTrace();

} catch (IOException e) {

e.printStackTrace();

} finally {

if (out != null) {

try {

out.close();

} catch (IOException e) {

// do nothing

}

}

}

}

}

如何用java 畫折線圖

package com.lei.jfreechart;

import javax.swing.JPanel;

import org.jfree.chart.ChartFactory;

import org.jfree.chart.ChartPanel;

import org.jfree.chart.JFreeChart;

import org.jfree.chart.axis.NumberAxis;

import org.jfree.chart.plot.CategoryPlot;

import org.jfree.chart.plot.PlotOrientation;

import org.jfree.data.category.DefaultCategoryDataset;

import org.jfree.ui.ApplicationFrame;

import org.jfree.ui.RefineryUtilities;

public class LineCharts extends ApplicationFrame {

/**

  * 

  */

 private static final long serialVersionUID = 1L;

public LineCharts(String s) {

   super(s);

   setContentPane(createDemoLine());

 }

public static void main(String[] args) {

   LineCharts fjc = new LineCharts(“折線圖”);

   fjc.pack();

   RefineryUtilities.centerFrameOnScreen(fjc);

   fjc.setVisible(true);

}

// 生成顯示圖表的面板

 public static JPanel createDemoLine() {

   JFreeChart jfreechart = createChart(createDataset());

   return new ChartPanel(jfreechart);

 }

// 生成圖表主對象JFreeChart

 public static JFreeChart createChart(DefaultCategoryDataset linedataset) {

   // 定義圖表對象

   JFreeChart chart = ChartFactory.createLineChart(“一季度銷售曲線”, //折線圖名稱

     “時間”, // 橫坐標名稱

     “銷售額(百萬)”, // 縱坐標名稱

     linedataset, // 數據

     PlotOrientation.VERTICAL, // 水平顯示圖像

     true, // include legend

     true, // tooltips

     false // urls

     );

   CategoryPlot plot = chart.getCategoryPlot();

   plot.setRangeGridlinesVisible(true); //是否顯示格子線

   plot.setBackgroundAlpha(0.3f); //設置背景透明度

   NumberAxis rangeAxis = (NumberAxis)plot.getRangeAxis();

   rangeAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits());

   rangeAxis.setAutoRangeIncludesZero(true);

   rangeAxis.setUpperMargin(0.20);

   rangeAxis.setLabelAngle(Math.PI / 2.0);

   return chart;

 }

// 生成數據

 public static DefaultCategoryDataset createDataset() {

   DefaultCategoryDataset linedataset = new DefaultCategoryDataset();

   // 各曲線名稱

   String series1 = “冰箱”;

   String series2 = “彩電”;

   String series3 = “洗衣機”;

   // 橫軸名稱(列名稱)

   String type1 = “1月”;

   String type2 = “2月”;

   String type3 = “3月”;

   linedataset.addValue(0.0, series1, type1);

   linedataset.addValue(4.2, series1, type2);

   linedataset.addValue(3.9, series1, type3);

   linedataset.addValue(1.0, series2, type1);

   linedataset.addValue(5.2, series2, type2);

   linedataset.addValue(7.9, series2, type3);

   linedataset.addValue(2.0, series3, type1);

   linedataset.addValue(9.2, series3, type2);

   linedataset.addValue(8.9, series3, type3);

   return linedataset;

 }

}

網友分享,看看是否能幫到你

java折線圖echarts 怎麼用

可以去官網下載它的資源包,然後根據自己想要的圖,在官網找到它的js,一般的數據都是改它js裡面的一段json數組,你只要在後台通過sql語句拿到數據,用json數組格式傳到前台就可以了。

已知兩個坐標軸上的數值點怎麼用java做一個折線圖?

import java.awt.Graphics;

import java.awt.Image;

import java.awt.Point;

import java.awt.image.BufferedImage;

import javax.swing.JFrame;

public class t3 extends JFrame {

t3()

{

this.setSize(200, 200);

this.setDefaultCloseOperation(3);

this.setVisible(true);

}

public static void main(String[] args)throws Exception{

new t3();

}

Point[] p = new Point[]{new Point(1,1),new Point(11,31),new Point(31,21),new Point(99,100)};

public void paint(Graphics g)

{

Image img = (Image)new BufferedImage(200,200,BufferedImage.SCALE_DEFAULT);

Graphics gg = img.getGraphics();

for(int i=0;ip.length-1;i++)

{

gg.drawLine(p[i].x, 200-p[i].y,p[i+1].x, 200-p[i+1].y);

}

g.drawImage(img, 0, 0, null);

}

}

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/282617.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-22 08:05
下一篇 2024-12-22 08:05

相關推薦

  • java client.getacsresponse 編譯報錯解決方法

    java client.getacsresponse 編譯報錯是Java編程過程中常見的錯誤,常見的原因是代碼的語法錯誤、類庫依賴問題和編譯環境的配置問題。下面將從多個方面進行分析…

    編程 2025-04-29
  • Java JsonPath 效率優化指南

    本篇文章將深入探討Java JsonPath的效率問題,並提供一些優化方案。 一、JsonPath 簡介 JsonPath是一個可用於從JSON數據中獲取信息的庫。它提供了一種DS…

    編程 2025-04-29
  • Java騰訊雲音視頻對接

    本文旨在從多個方面詳細闡述Java騰訊雲音視頻對接,提供完整的代碼示例。 一、騰訊雲音視頻介紹 騰訊雲音視頻服務(Cloud Tencent Real-Time Communica…

    編程 2025-04-29
  • Python讀取CSV數據畫散點圖

    本文將從以下方面詳細闡述Python讀取CSV文件並畫出散點圖的方法: 一、CSV文件介紹 CSV(Comma-Separated Values)即逗號分隔值,是一種存儲表格數據的…

    編程 2025-04-29
  • Java Bean加載過程

    Java Bean加載過程涉及到類加載器、反射機制和Java虛擬機的執行過程。在本文中,將從這三個方面詳細闡述Java Bean加載的過程。 一、類加載器 類加載器是Java虛擬機…

    編程 2025-04-29
  • Java Milvus SearchParam withoutFields用法介紹

    本文將詳細介紹Java Milvus SearchParam withoutFields的相關知識和用法。 一、什麼是Java Milvus SearchParam without…

    編程 2025-04-29
  • Java 8中某一周的周一

    Java 8是Java語言中的一個版本,於2014年3月18日發布。本文將從多個方面對Java 8中某一周的周一進行詳細的闡述。 一、數組處理 Java 8新特性之一是Stream…

    編程 2025-04-29
  • Python中讀入csv文件數據的方法用法介紹

    csv是一種常見的數據格式,通常用於存儲小型數據集。Python作為一種廣泛流行的編程語言,內置了許多操作csv文件的庫。本文將從多個方面詳細介紹Python讀入csv文件的方法。…

    編程 2025-04-29
  • Java判斷字符串是否存在多個

    本文將從以下幾個方面詳細闡述如何使用Java判斷一個字符串中是否存在多個指定字符: 一、字符串遍歷 字符串是Java編程中非常重要的一種數據類型。要判斷字符串中是否存在多個指定字符…

    編程 2025-04-29
  • 如何用Python統計列表中各數據的方差和標準差

    本文將從多個方面闡述如何使用Python統計列表中各數據的方差和標準差, 並給出詳細的代碼示例。 一、什麼是方差和標準差 方差是衡量數據變異程度的統計指標,它是每個數據值和該數據值…

    編程 2025-04-29

發表回復

登錄後才能評論