我需要绘制磁滞回线,然后计算回线内闭合的面积。我正在使用JFreeChart。
考虑以下数据:
hyst[0]=0;
hyst[1]=0;
hyst[2]=0.0098;
hyst[3]=0.0196;
hyst[4]=0.0489;
hyst[5]=0.0879;
hyst[6]=0.0684;
hyst[7]=0.0489;
hyst[8]=0.0196;
hyst[9]=0.0098;
hyst[10]=0;
hyst[11]=0;
hyst[12]=0;
hyst[13]=0;
hyst[14]=0;
hyst[15]=-0.0195;
hyst[16]=-0.0488;
hyst[17]=-0.0391;
hyst[18]=-0.0195;
hyst[19]=0;
hyst[20]=0;
当我尝试:
public void plotHysteresis()
{
int j=0;
int i=0;
XYSeries series1 = new XYSeries("Before Treatment");
// DefaultCategoryDataset series1 = new DefaultCategoryDataset();
for(i=0;i<6;i++)
{
series1.add(j,hyst[i]);
logTextArea.append(Integer.toString(j) +" : " +Double.toString(hyst[i])+"\n");
j=j+5;
}
j=j-5;
for(;i<11;i++)
{
j=j-5;
series1.add(j,hyst[i]);
logTextArea.append(Integer.toString(j) +" : " +Double.toString(hyst[i])+"\n");
}
for(;i<16;i++)
{
j=j-5;
series1.add(j,hyst[i]);
logTextArea.append(Integer.toString(j) +" : " +Double.toString(hyst[i])+"\n");
}
for(;i<21;i++)
{
j=j+5;
series1.add(j,hyst[i]);
logTextArea.append(Integer.toString(j) +" : " +Double.toString(hyst[i])+"\n");
}
XYSeriesCollection dataset = new XYSeriesCollection();
dataset.addSeries(series1);
JFreeChart chart = ChartFactory.createXYAreaChart(
"Hysteresis Plot", // chart title
"Pounds (lb)", // x axis label
"Distance (inches)", // y axis label
dataset, // data
PlotOrientation.VERTICAL,
true, // include legend
true, // tooltips
false // urls
);
chart.setBackgroundPaint(Color.white);
ChartPanel frame = new ChartPanel(chart);
frame.setVisible(true);
frame.setSize(plotPanel.getWidth(),plotPanel.getHeight());
plotPanel.add(frame);
plotPanel.repaint();
}
JFreeChart chart = ChartFactory.createXYLineChart(
"Hysteresis Plot", // chart title
"Pounds (lb)", // x axis label
"Distance (inches)", // y axis label
dataset, // data
PlotOrientation.VERTICAL,
true, // include legend
true, // tooltips
false // urls
);
我想区别在于点的连接方式。请指导如何用jFreeChart获得所需的磁滞回线,然后如何计算封闭面积。
谢谢
如何更改线条颜色以及表示数据点的符号。我希望他们都是统一的。
您似乎已经选择JFreeChart
作为视图。综合其他一些评论,
>
您可以通过提供drawingsupplier
,使您的几个系列的颜色和形状均匀一致,如下所示。
我用JFreeChart来表示我的x和y数组。这些数组被绘制得很好,但是回归线被破坏了,永远也不会被绘制出来。除了和函数之外,所有函数都可以工作,例如打印值。不知怎的,这两个都不起作用。我不太介意,但我喜欢能够。我的阵列具有正确的数据,因此不确定问题出在哪里。我正在函数中将数组数据导入数据集。我的具有和阵列。它们有和数据类型。
我想用Python或Matlab在极坐标网格上绘制多个磁滞回线(如下图所示,摘自一篇论文)。我知道如何在matlab中使用极坐标图函数,但我正在努力解决这个问题,尤其是重新调整磁滞回线的大小以及如何定义θ
你好,我必须做一个程序来显示功率曲线,因此我需要在一个窗口上显示三个不同的图。不同类型的图是XY(只是点)、条形图和带线的XY图。
本文向大家介绍JFreeChart简单实现光滑曲线绘制,包括了JFreeChart简单实现光滑曲线绘制的使用技巧和注意事项,需要的朋友参考一下 用JFreeChart绘制光滑曲线,利用最小二乘法数学原理计算,供大家参考,具体内容如下 绘制图形: 代码: FittingCurve.java 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。
我想画一些垂直线来跟踪任务,如下图中的红线所示。我相信可以使用甘特图绘制器绘制线条。 我想要的是在绘制任务期间存储直线endpoint的坐标,然后最终在绘图中绘制这些直线。 我想知道是否有一种方法可以让你在绘图上绘制任何东西,以及这是否是解决这个问题的正确方法。 以下是我的甘特图渲染器代码: 更新: 似乎LineAnnotics是实现这些行的最佳方式。Link1
有人知道如何在甘特图中的特定位置移动/绘制虚线吗?例如,我有这样的图表: 链接到图像 很难看到任务1和任务2以及任务3在哪里。 如果可能的话,画水平线不是在1,2,3线,而是在整个系列之后,以明确视觉分隔符。 谢谢