贴标轴。 从Excel转换。 将数据转换为string
你将如何绘制A和B图,其中A和B是Excel中的列,例如
A Red Green Blue
和
B 1:00 AM 2:00 AM 3:00 AM
为3 * 3图我使用
set(gca,'XTick',1:3); set(gca,'XTickLabel',{'Red','Green','Blue'}); set(gca,'YTick',1:3); set(gca,'YTickLabel',{'1:00 AM','2:00 AM','3:00 AM'});
但是,手动input1000 * 1000将是一团糟。
所以我的问题是: 如何将红绿蓝从A列转换为{'Red','Green','Blue'}
? (为了在set(gca,'XTickLabel'...)
使用它们set(gca,'XTickLabel'...)
我试过使用
color = xlsread(fileName, 'A1:A3');
但它没有将数据转换成正确的格式。
任何帮助表示赞赏。
xlsread
的第二个输出参数包含文本数据。 第一个只包含数字:
>> [nums,colors,raw] = xlsread('colorData.xlsx','A1:A3'); >> colors colors = 'Red' 'Green' 'Blue'
更新:由xlsread
读取的xlsread
是Excel的序列date格式(数字表示)。 可以使用datestr
将它们转换为一个string。
>> nums nums = 0.0417 0.0833 0.1250 >> datestr(nums) ans = 1:00 AM 2:00 AM 3:00 AM
这些实际上是date, 1900年1月1日为零 。 所以,只是给一点时间,这个数字假设这一天。 但是,MATLAB使用Jan-1-0000,所以如果你有date和时间,使用datestr(t + datenum('30-Dec-1899'))
来转换它们,其中t
是序列date数字。