I would like to plot different points with different colors and symbols. Here is my Code in "C" :
float x[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11};
float y[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11};
FILE *gnuplot = popen("gnuplot", "w");
fprintf(gnuplot, "plot '-' pt 7 pointsize 2 lc \"blue\" notitle \n");
for (int i = 0; i < 6; i) {
fprintf(gnuplot,"%f %f\n", x[i], y[i]);
}
fprintf(gnuplot, "plot '-' pt 5 pointsize 2 lc \"red\" notitle \n");
for (int i = 6; i < 12; i) {
fprintf(gnuplot,"%f %f\n", x[i], y[i]);
}
fprintf(gnuplot, "e\n");
fflush(gnuplot);
getch();
fclose(gnuplot);
Unfortunately, all points have the same type and same color. What is my mistake? Thanks in advance!
Edit:
Addition: (as mentioned in the comments)
Since gnuplot 5.0 you have datablocks which are including the data as well into the plotting code, check help inline.
The advantage is that if you want to make plots of several columns you don't have to provide the data multiple times or split it into sequential 2 column data.
The following examples will all result in the same plot:
Code:
$Data1 <<EOD
0 0
1 1
2 2
3 3
4 4
5 5
EOD
$Data1 <<EOD
6 6
7 7
8 8
9 9
10 10
11 11
EOD
plot $Data1 u 1:2 w p pt 7, \
$Data2 u 1:2 w p pt 5
$Data <<EOD
0 0 6 6
1 1 7 7
2 2 8 8
3 3 9 9
4 4 10 10
5 5 11 11
EOD
plot $Data u 1:2 w p pt 7, \
'' u 3:4 w p pt 5
plot '-' u 1:2 w p pt 7, \
'-' u 1:2 w p pt 5,
0 0
1 1
2 2
3 3
4 4
5 5
e
6 6
7 7
8 8
9 9
10 10
11 11
e
plot '-' u 1:2 w p pt 7, \
'-' u 3:4 w p pt 5,
0 0 6 6
1 1 7 7
2 2 8 8
3 3 9 9
4 4 10 10
5 5 11 11
e
0 0 6 6
1 1 7 7
2 2 8 8
3 3 9 9
4 4 10 10
5 5 11 11
e

