How can i make an empty graph without using csv?

Good afternoon, I found an example that I would like to edit to fit my values at the moment I can use the graph from the file csv, but how can you do the same with processing tools?

import grafica.*;
 
GPlot plot1, plot2;
 
void setup() {
  size(440, 420);
 
  // Create the first plot
  plot1 = new GPlot(this);
  plot1.setPos(0, 0);
  plot1.setMar(60, 70, 40, 70);
  plot1.setDim(300, 300);
  plot1.setAxesOffset(4);
  plot1.setTicksLength(4);
 
  // Create the second plot with the same dimensions
  plot2 = new GPlot(this);
  plot2.setPos(plot1.getPos());
  plot2.setMar(plot1.getMar());
  plot2.setDim(plot1.getDim());
  plot2.setAxesOffset(4);
  plot2.setTicksLength(4);
 
  // Prepare the points
  int nPoints = 50;
  GPointsArray points = new GPointsArray(nPoints);
 
  for (int i = 0; i < nPoints; i++) {
    points.add(i, 30 + 10*noise(i*0.1));
  }  
 
  // Set the points, the title and the axis labels
  plot1.setPoints(points);
  plot1.setTitleText("Temperature");
  plot1.getYAxis().setAxisLabelText("T (Celsius)");
  plot1.getXAxis().setAxisLabelText("Time (minutes)");
 
  plot2.getRightAxis().setAxisLabelText("T (Kelvin)");
 
  // Make the right axis of the second plot visible
  plot2.getRightAxis().setDrawTickLabels(true);
 
  // Activate the panning (only for the first plot)
  plot1.activatePanning();
}
 
void draw() {
  background(255);
 
  // Draw the first plot
  plot1.beginDraw();
  plot1.drawBox();
  plot1.drawXAxis();
  plot1.drawYAxis();
  plot1.drawTitle();
  plot1.drawPoints();
  plot1.drawLines();
  plot1.endDraw();
 
  // Change the second plot vertical scale from Celsius to Kelvin
  plot2.setYLim(celsiusToKelvin(plot1.getYLim()));
 
  // Draw only the right axis
  plot2.beginDraw();
  plot2.drawRightAxis();
  plot2.endDraw();
}
 
//
// Transforms from degree Celsius to degree Kelvin
//
float[] celsiusToKelvin(float[] celsius){
  float[] kelvin = new float[celsius.length];
 
  for(int i = 0; i < celsius.length; i++){
    kelvin[i] = 273.15 + celsius[i];
  }
 
  return kelvin;
}
1 Like

Hi

Some informations here

I am not sure I understand.

Do you mean to change the csv and leave the program it is?

  • You can edit the csv and insert your own data.
  • You can use a Text Editor (notepad in windows) to edit csv.
  • You can use Excel to edit it, but it’s tricky, and I think you need to use import / export to get good results.
  • Just make a copy from the old csv and copy new csv into it.
  • Of course you can make a simple Excel clone to edit existing csv. But why.

OR do you mean to change the program?

2 Likes

Yes! I mean change the code of the program like in the picture without using the csv file at all!

How to change the left column with data from 150 in steps of 5 to 300.
How to change the data at the bottom from 1 to 99 in increments of 1. How to change the right column from 200-299?

I don’t think there is a csv file used in the program above.

The points are generated with noise().

  • Do you want to use a csv? Then look at loadStrings() in the reference, for loop over the array and use points.add( ... ).

  • When you don’t want to use a csv and don’t want to load a csv, you can just write the data into your Sketch and parse them to points.add(....).

for example


float[][] listData = 
   {
     {112,23}, 
     {212,13}, 
     {172,17}
   };
2 Likes

Now we are talking.

Look at this

 for (int i = 0; i < nPoints; i++) {
    points.add(i, 30 + 10*noise(i*0.1));
  }  

Consider

 for (int i = 1; i < 99; i+=1) {
    points.add(i, i*5 );
  }  
2 Likes

Very good thanks for the tip from I something went out.
I think the right side is the same.

1 Like