Si no te muestra error es porque no hay error al menos en php, entonces el error debe estar en el javascript, revisa si te marca error en el navegador con clic derecho y opcion Inspeccionar elemento.
Otra cosa veo que la libreria e highcharts la tienes en el body, pero deberia ir antes del script de la grafica y despues de la libreria jquery, el script de la grafica debe ejecutarse despues de que la pagina este cargada, con esos cambios quedaria asi
Código PHP:
Ver original<?php
$mysqli = new mysqli("localhost","root","","kosys");
//Esta es la query
$sql = $mysqli->query("SELECT rubros.nombre as nombre, sum(productos.ventas) AS venta_rubro FROM productos INNER JOIN rubros ON productos.rubro = rubros.id GROUP BY productos.rubro");
$datos=array();//Nueva Linea while($row = $sql->fetch_array(MYSQLI_NUM))
{
$nombre = $row[0];
$venta = $row[1];
$datos[]=array($nombre,$venta);//Nueva Linea }
?>
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script type="text/javascript" src="jquery-ui-1.8.20\jquery-1.7.2.js"></script>
<script src="Highcharts\Highcharts-3.0.10\js\highcharts.js"></script>
<script src="Highcharts\Highcharts-3.0.10\js\modules\exporting.js"></script>
<script type="text/javascript">
$(document).ready(function() {
var datos=$.parseJSON(
<?php echo json_encode($datos); ?>);//Nueva linea
$('#container').highcharts({
chart: {
plotBackgroundColor: null,
plotBorderWidth: null,
plotShadow: false
},
title: {
text: 'Venta por Rubros'
},
tooltip: {
pointFormat: '{series.name}: <b>{point.percentage:.1f}%</b>'
},
plotOptions: {
pie: {
allowPointSelect: true,
cursor: 'pointer',
dataLabels: {
enabled: true,
color: '#000000',
connectorColor: '#000000',
format: '<b>{point.name}</b>: {point.percentage:.1f} %'
}
}
},
series: [{
type: 'pie',
name: 'Venta por Rubros',
data: datos,
}]
});
});
</script>
</head>
<body>
<div id="container" style="min-width: 310px; height: 400px; margin: 0 auto"></div>
</body>
</html>