我创建的JFreeChart是一个LineChart。我遇到的问题是图表上的线没有显示。
任何人都可以告诉我为什么会这样。
以下是按钮的编码:
DefaultCategoryDataset dataset2 = new DefaultCategoryDataset();
dataset2.setValue(100, "John B","EMP0001");
dataset2.setValue(200, "John A","EMP0003");
JFreeChart chart2 = ChartFactory.createLineChart("Comission", "Employee", "Number of Sales", dataset2, PlotOrientation.VERTICAL, false, true, true);
chart2.setBackgroundPaint(Color.YELLOW);
chart2.getTitle().setPaint(Color.RED);
CategoryPlot p2 = chart2.getCategoryPlot();
p2.setRangeGridlinePaint(Color.BLUE);
ChartFrame frame2 = new ChartFrame("Employee Comission", chart2);
frame2.setVisible(true);
frame2.setSize(450,350);
创建折线图时会发生这种情况:
Line chart without line displaying on chart
请有人帮忙告诉我可能存在的问题在哪里。
答案 0 :(得分:0)
为了显示一行,您需要有两个对rowKey具有相同值的数据项和列键的不同值。
如果您将数据更改为:
<?php
$file = "./subjects.txt";
$h = fopen($file, "r");
if($h !== false) {
$subjects = [];
$data = [];
while(!feof($h)) {
if($line = trim(fgets($h))) {
$line = explode(",", $line);
if(!in_array("DateCreated",$line)) {
array_push($subjects, $line);
}
}
}
fclose($h);
foreach ($subjects as $subject) {
if(!isset($data[$subject[1]])) {
$data[$subject[1]] = [];
}
$data[$subject[1]][] = $subject[2];
}
foreach ($data as $subject => $links) {
if(count($links) == 1) {
echo "<p><a href=" . $links[0]. ">$subject</a></p>\n";
} else {
$i = 1;
echo "<p>$subject</p>\n";
echo "<ul>\n";
foreach ($links as $link) {
echo "<li><a href=\"$link\">link$i</a></li>\n";
$i++;
}
echo "</ul>\n";
}
}
}
?>
然后是情节:
请注意&#34; John A&#34;值是红色的&#34; John B&#34;值是蓝色的 红色和蓝色不连接。列值沿底部打印。