Ik moet een histogram plotten op logaritmische schaal op beide assen met gnuplot. Ik heb bins nodig om op gelijke afstand van elkaar te staan in log10. Het gebruik van een logaritmische schaal op de y-as is geen probleem. Het grootste probleem is het maken van de prullenbak op de x-as. Als u bijvoorbeeld 10 bins in log10 gebruikt, zijn de eerste bins [1], [2], [3] .... [10 - 19] [20 - 29] ..... [100 190] enzovoort . Ik heb op het net gezocht maar ik kon geen praktische oplossing vinden. Als het realiseren in gnuplot te gecompliceerd is, kun je een andere software/taal voorstellen om het te doen?
Zoals iemand vroeg, zal ik meer specifiek uitleggen wat ik moet doen. Ik heb een (enorme) lijst zoals deze:
1 14000000
2 7000000
3 6500000
.
.
.
.
6600 1
8900 1
15000 1
19000 1
Het laat bijvoorbeeld zien dat 14 miljoen IP-adressen 1 pakket, 7 miljoen 2 pakketten hebben verzonden .... 1 ip-adres 6600 pakketten verzonden, ..., 1 ip-adres 19000-pakketten verzonden. Zoals je kunt zien zijn de waarden op beide assen behoorlijk hoog, dus ik kan het niet plotten zonder een logaritmische schaal.
De eerste dingen die ik probeerde omdat ik het snel moest doen, was het plotten van deze lijst zoals het is met het instellen van de logschaal van gnuplot op beide assen met behulp van boxen. Het resultaat is begrijpelijk, maar niet te gepast. Sterker nog, de vakken werden steeds dunner en gingen recht op de x-as omdat er uiteraard meer punten zijn in 10-100 dan in 1-10! Dus het werd een echte puinhoop na het tweede decennium.