mirror of
https://github.com/red-data-tools/YouPlot.git
synced 2025-05-06 15:11:12 +08:00
various changes...
This commit is contained in:
parent
6a00314fc4
commit
0c1fcc517b
@ -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|
|
||||||
|
@ -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
|
||||||
|
Loading…
Reference in New Issue
Block a user