various changes...

This commit is contained in:
kojix2 2020-08-03 10:36:36 +09:00
parent 6a00314fc4
commit 0c1fcc517b
2 changed files with 9 additions and 6 deletions

View File

@ -27,8 +27,9 @@ module Uplot
opt.on('-b', '--border VAL', Numeric) { |v| @params[:border] = v } opt.on('-b', '--border VAL', Numeric) { |v| @params[:border] = v }
opt.on('-m', '--margin VAL', Numeric) { |v| @params[:margin] = v } opt.on('-m', '--margin VAL', Numeric) { |v| @params[:margin] = v }
opt.on('-p', '--padding VAL', Numeric) { |v| @params[:padding] = v } opt.on('-p', '--padding VAL', Numeric) { |v| @params[:padding] = v }
opt.on('-c', '--color VAL', String) { |v| @params[:color] = v }
opt.on('-l', '--labels', TrueClass) { |v| @params[:labels] = v } opt.on('-l', '--labels', TrueClass) { |v| @params[:labels] = v }
opt.on('--debug', TrueClass){ |v| @debug = v } opt.on('--debug', TrueClass) { |v| @debug = v }
end end
end end
@ -41,7 +42,7 @@ module Uplot
parsers['lineplot'] = parsers['line'] parsers['lineplot'] = parsers['line']
parsers['lineplots'] = parsers['lines'] parsers['lineplots'] = parsers['lines']
parsers['scatterplot'] = parsers['scatter'] parsers['scatterplot'] = parsers['scatter']
parsers['bar'] .on('-c', '--count', TrueClass) { |v| @count = v } parsers['bar'] .on('--count', TrueClass) { |v| @count = v }
parsers['barplot'] = parsers['bar'] parsers['barplot'] = parsers['bar']
parsers['boxplot'] = parsers['box'] parsers['boxplot'] = parsers['box']
parsers['count'] = parsers['c'] # barplot -c parsers['count'] = parsers['c'] # barplot -c
@ -74,7 +75,7 @@ module Uplot
while input = Kernel.gets(nil) while input = Kernel.gets(nil)
input.freeze input.freeze
data, headers = preprocess(input) data, headers = preprocess(input)
pp data: data, headers: headers if @debug pp input: input, data: data, headers: headers if @debug
case @ptype case @ptype
when 'hist', 'histogram' when 'hist', 'histogram'
histogram(data, headers) histogram(data, headers)
@ -107,6 +108,7 @@ module Uplot
def preprocess(input) def preprocess(input)
data = CSV.parse(input, col_sep: @delimiter) data = CSV.parse(input, col_sep: @delimiter)
data.delete([])
headers = nil headers = nil
if @transpose if @transpose
if @headers if @headers
@ -159,7 +161,7 @@ module Uplot
def lines(data, headers) def lines(data, headers)
data.map! { |series| series.map(&:to_f) } data.map! { |series| series.map(&:to_f) }
@params[:name] ||= headers[1] if headers @params[:name] ||= headers[1] if headers
@params[:xlabel] ||=headers[0] if headers @params[:xlabel] ||= headers[0] if headers
@params[:ylim] ||= data[1..-1].flatten.minmax @params[:ylim] ||= data[1..-1].flatten.minmax
plot = UnicodePlot.lineplot(data[0], data[1], **@params.compact) plot = UnicodePlot.lineplot(data[0], data[1], **@params.compact)
2.upto(data.size - 1) do |i| 2.upto(data.size - 1) do |i|
@ -171,7 +173,7 @@ module Uplot
def scatter(data, headers) def scatter(data, headers)
data.map! { |series| series.map(&:to_f) } data.map! { |series| series.map(&:to_f) }
@params[:name] ||= headers[1] if headers @params[:name] ||= headers[1] if headers
@params[:xlabel] ||=headers[0] if headers @params[:xlabel] ||= headers[0] if headers
@params[:ylim] ||= data[1..-1].flatten.minmax @params[:ylim] ||= data[1..-1].flatten.minmax
plot = UnicodePlot.scatterplot(data[0], data[1], **@params.compact) plot = UnicodePlot.scatterplot(data[0], data[1], **@params.compact)
2.upto(data.size - 1) do |i| 2.upto(data.size - 1) do |i|
@ -183,7 +185,7 @@ module Uplot
def density(data, headers) def density(data, headers)
data.map! { |series| series.map(&:to_f) } data.map! { |series| series.map(&:to_f) }
@params[:name] ||= headers[1] if headers @params[:name] ||= headers[1] if headers
@params[:xlabel] ||=headers[0] if headers @params[:xlabel] ||= headers[0] if headers
@params[:ylim] ||= data[1..-1].flatten.minmax @params[:ylim] ||= data[1..-1].flatten.minmax
plot = UnicodePlot.densityplot(data[0], data[1], **@params.compact) plot = UnicodePlot.densityplot(data[0], data[1], **@params.compact)
2.upto(data.size - 1) do |i| 2.upto(data.size - 1) do |i|

View File

@ -23,5 +23,6 @@ Gem::Specification.new do |spec|
spec.add_runtime_dependency 'unicode_plot' spec.add_runtime_dependency 'unicode_plot'
spec.add_development_dependency 'bundler' spec.add_development_dependency 'bundler'
spec.add_development_dependency 'rake' spec.add_development_dependency 'rake'
spec.add_development_dependency 'rubocop'
spec.add_development_dependency 'test-unit' spec.add_development_dependency 'test-unit'
end end