Сравнить коммиты

...

1 Коммитов
lab4 ... main

@ -38,25 +38,25 @@ void SvgRect(double x, double y, double width, double height, string stroke = "b
void
ShowHistogramSvg(const vector<size_t>& bins) {
double top = 0;
SvgBegin(400, 300);
size_t MaxCount = 0;
for (auto bin : bins) {
if (MaxCount < bin) {
MaxCount = bin;
double move = 0;
SvgBegin(IMAGE_WIDTH, IMAGE_HEIGHT);
double k = 1;
size_t max_bin = bins[0];
for (size_t bin : bins) {
if (bin > max_bin) {
max_bin = bin;
}
}
int k = (IMAGE_WIDTH - TEXT_WIDTH) / MaxCount * BLOCK_WIDTH;
if (max_bin * 10 > IMAGE_HEIGHT) {
k = double(IMAGE_HEIGHT - TEXT_WIDTH) / (max_bin * 10);
}
if (k > 1) k = 1;
for (size_t bin : bins) {
bin = bin * k;
const double bin_width = BLOCK_WIDTH * bin;
SvgText(TEXT_LEFT, top + TEXT_BASELINE, to_string(bin));
SvgRect(TEXT_WIDTH, top, bin_width, BIN_HEIGHT, "red", "#FF69B4");
top += BIN_HEIGHT;
const double bin_width = BLOCK_WIDTH * bin * k;
SvgText(TEXT_LEFT + move, TEXT_BASELINE, to_string(bin));
SvgRect(move+13, 3*BLOCK_WIDTH, BIN_HEIGHT, bin_width,"red","#FFD700");
move += BIN_HEIGHT;
}
SvgEnd();
}

Загрузка…
Отмена
Сохранить